<HTML>
<HEAD>
<TITLE> What's New in SPICE </TITLE>
</HEAD>

<BODY style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">

<A NAME="top"></A>

<TABLE STYLE="text-align: left; margin-left: auto; margin-right: auto; width: 800px;" BORDER="0" CELLPADDING="5" CELLSPACING="2">
<TBODY>
<TR>
  <TD STYLE="background-color: rgb(153, 153, 153); vertical-align: middle; text-align: center;">
  <DIV ALIGN="right">
    <SMALL><SMALL><A HREF="../index.html">Main Page</A></SMALL></SMALL>
  </DIV>
  <B>What's New in SPICE</B> </TD>
</TR>
<TR>
  <TD STYLE="vertical-align: top;">

<H2> Table of Contents
</H2>

<PRE>
   <A HREF="#What's New in SPICE">What's New in SPICE</A>
   <A HREF="#Introduction">Introduction</A>
   <A HREF="#Version 64 --- June 2010">Version 64 --- June 2010</A>
      <A HREF="#Environments">Environments</A>
         <A HREF="#New Environments">New Environments</A>
         <A HREF="#Complete List of Supported Environments">Complete List of Supported Environments</A>
         <A HREF="#Dynamically Linked Executables">Dynamically Linked Executables</A>
         <A HREF="#Lahey Memory Issue Related to File Opening/Closing">Lahey Memory Issue Related to File Opening/Closing</A>
         <A HREF="#Scratch EK File Issue in Icy on PC/Windows">Scratch EK File Issue in Icy on PC/Windows</A>
      <A HREF="#Geometry Finder (GF) Subsystem">Geometry Finder (GF) Subsystem</A>
         <A HREF="#SPICELIB High-Level GF APIs">SPICELIB High-Level GF APIs</A>
         <A HREF="#CSPICE High-Level GF APIs">CSPICE High-Level GF APIs</A>
         <A HREF="#Icy and Mice High-Level GF APIs">Icy and Mice High-Level GF APIs</A>
      <A HREF="#SPICELIB/CSPICE/Icy/Mice">SPICELIB/CSPICE/Icy/Mice</A>
         <A HREF="#Kernel Pool Variable Name Length Check">Kernel Pool Variable Name Length Check</A>
         <A HREF="#CK Buffered Segment Limits">CK Buffered Segment Limits</A>
         <A HREF="#SPK Buffered Segment Limits">SPK Buffered Segment Limits</A>
         <A HREF="#Kernel Pool Double Precision Buffer Limit">Kernel Pool Double Precision Buffer Limit</A>
         <A HREF="#SCLK Coefficient Record Limit">SCLK Coefficient Record Limit</A>
         <A HREF="#CK writer quaternion magnitude check">CK writer quaternion magnitude check</A>
         <A HREF="#New SPICELIB Interfaces">New SPICELIB Interfaces</A>
         <A HREF="#New CSPICE Interfaces">New CSPICE Interfaces</A>
         <A HREF="#New Icy Interfaces">New Icy Interfaces</A>
         <A HREF="#New Mice Interfaces">New Mice Interfaces</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#Documentation">Documentation</A>
         <A HREF="#Overwriting Input Arguments Not Allowed">Overwriting Input Arguments Not Allowed</A>
      <A HREF="#Bug Fixes">Bug Fixes</A>
         <A HREF="#Kernel Pool Watcher Deletion in TKFRAM">Kernel Pool Watcher Deletion in TKFRAM</A>
         <A HREF="#Frame Change in CKGP">Frame Change in CKGP</A>
         <A HREF="#ROTGET Dynamic Frame ID">ROTGET Dynamic Frame ID</A>
         <A HREF="#ZZEKQCON Initialization Error">ZZEKQCON Initialization Error</A>
         <A HREF="#ZZEKRD03 Memory Violation Error">ZZEKRD03 Memory Violation Error</A>
         <A HREF="#EK Strings Longer Than 1024 Characters">EK Strings Longer Than 1024 Characters</A>
         <A HREF="#RETURN Mode Logic in Various Routines">RETURN Mode Logic in Various Routines</A>
   <A HREF="#Version 63 --- April 2009">Version 63 --- April 2009</A>
      <A HREF="#Environments0">Environments</A>
         <A HREF="#New Environments0">New Environments</A>
         <A HREF="#Complete List of Supported Environments0">Complete List of Supported Environments</A>
         <A HREF="#Lahey Memory Issue Related to File Opening/Closing0">Lahey Memory Issue Related to File Opening/Closing</A>
         <A HREF="#Scratch EK File Issue in Icy on PC/Windows0">Scratch EK File Issue in Icy on PC/Windows</A>
      <A HREF="#Geometry Finder (GF) Subsystem">Geometry Finder (GF) Subsystem</A>
         <A HREF="#SPICELIB High-Level GF APIs0">SPICELIB High-Level GF APIs</A>
         <A HREF="#CSPICE High-Level GF APIs0">CSPICE High-Level GF APIs</A>
         <A HREF="#Icy and Mice High-Level GF APIs0">Icy and Mice High-Level GF APIs</A>
      <A HREF="#SPICELIB/CSPICE/Icy/Mice0">SPICELIB/CSPICE/Icy/Mice</A>
         <A HREF="#SURFPV/surfpv_c (SPICELIB/CSPICE only)">SURFPV/surfpv_c (SPICELIB/CSPICE only)</A>
         <A HREF="#DVSEP/dvsep_c (SPICELIB/CSPICE only)">DVSEP/dvsep_c (SPICELIB/CSPICE only)</A>
         <A HREF="#GETFOV">GETFOV</A>
         <A HREF="#FURNSH">FURNSH</A>
         <A HREF="#Improved Error Messages from PXFORM/SXFORM">Improved Error Messages from PXFORM/SXFORM</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions0">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#Mice (MATLAB interface to CSPICE) Only">Mice (MATLAB interface to CSPICE) Only</A>
         <A HREF="#New Interfaces">New Interfaces</A>
      <A HREF="#New and Updated Applications">New and Updated Applications</A>
         <A HREF="#FRMDIFF">FRMDIFF</A>
         <A HREF="#CKBRIEF">CKBRIEF</A>
      <A HREF="#Documentation0">Documentation</A>
         <A HREF="#Language Specific Required Reading Documents">Language Specific Required Reading Documents</A>
         <A HREF="#CKBRIEF User's Guide">CKBRIEF User's Guide</A>
      <A HREF="#Bug Fixes0">Bug Fixes</A>
         <A HREF="#SINCPT, SRFXPT">SINCPT, SRFXPT</A>
         <A HREF="#POOL Watchers">POOL Watchers</A>
         <A HREF="#Frame subsystem">Frame subsystem</A>
         <A HREF="#Error handling">Error handling</A>
         <A HREF="#Non-printing Character Detection in Time System">Non-printing Character Detection in Time System</A>
         <A HREF="#MKSPK">MKSPK</A>
         <A HREF="#CKBRIEF0">CKBRIEF</A>
   <A HREF="#Version 62 --- March 2008">Version 62 --- March 2008</A>
      <A HREF="#Environments1">Environments</A>
         <A HREF="#New Environments1">New Environments</A>
         <A HREF="#Complete List of Supported Environments1">Complete List of Supported Environments</A>
         <A HREF="#Use of -m32 Option">Use of -m32 Option</A>
         <A HREF="#Lahey Memory Issue Related to File Opening/Closing1">Lahey Memory Issue Related to File Opening/Closing</A>
         <A HREF="#Scratch EK File Issue in Icy on PC/Windows1">Scratch EK File Issue in Icy on PC/Windows</A>
      <A HREF="#Mice">Mice</A>
      <A HREF="#SPICELIB/CSPICE/Icy/Mice1">SPICELIB/CSPICE/Icy/Mice</A>
         <A HREF="#New ``Surface Intercept'' routine SINCPT">New ``Surface Intercept'' routine SINCPT</A>
         <A HREF="#New ``Illumination Angles'' routine ILUMIN">New ``Illumination Angles'' routine ILUMIN</A>
         <A HREF="#New ``Sub-observer Point'' routine SUBPNT">New ``Sub-observer Point'' routine SUBPNT</A>
         <A HREF="#New ``Sub-solar Point'' Routine SUBSLR">New ``Sub-solar Point'' Routine SUBSLR</A>
         <A HREF="#Improvements of Aberration Corrected Velocity in the SPK Subsystem">Improvements of Aberration Corrected Velocity in the SPK Subsystem</A>
         <A HREF="#New SPK Routines">New SPK Routines</A>
         <A HREF="#New Binary PCK Coverage Routines PCKFRM and PCKCOV">New Binary PCK Coverage Routines PCKFRM and PCKCOV</A>
         <A HREF="#New Routine WNCARD">New Routine WNCARD</A>
         <A HREF="#New Routine EDTERM">New Routine EDTERM</A>
         <A HREF="#SCLK Buffer Size Increase">SCLK Buffer Size Increase</A>
         <A HREF="#TABs in Text Kernels">TABs in Text Kernels</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions1">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#Icy (IDL interface to CSPICE) Only">Icy (IDL interface to CSPICE) Only</A>
         <A HREF="#New and Updated Interfaces">New and Updated Interfaces</A>
      <A HREF="#Documentation1">Documentation</A>
         <A HREF="#Permutted Index for Icy and Mice">Permutted Index for Icy and Mice</A>
         <A HREF="#BRIEF User's Guide">BRIEF User's Guide</A>
         <A HREF="#Documentation on NAIF Web Server">Documentation on NAIF Web Server</A>
      <A HREF="#BRIEF">BRIEF</A>
      <A HREF="#CKBRIEF1">CKBRIEF</A>
      <A HREF="#MKSPK0">MKSPK</A>
      <A HREF="#SUBPT Cookbook">SUBPT Cookbook</A>
      <A HREF="#Bug Fixes1">Bug Fixes</A>
         <A HREF="#EV2LIN">EV2LIN</A>
         <A HREF="#HYPTOF">HYPTOF</A>
         <A HREF="#INELPL">INELPL</A>
         <A HREF="#RAXISA">RAXISA</A>
         <A HREF="#SC01">SC01</A>
         <A HREF="#SRFXPT">SRFXPT</A>
         <A HREF="#BRIEF0">BRIEF</A>
         <A HREF="#CKBRIEF2">CKBRIEF</A>
         <A HREF="#Header Updates">Header Updates</A>
   <A HREF="#Version 61 --- December 2006">Version 61 --- December 2006</A>
      <A HREF="#Rules Regarding Use of SPICE Components">Rules Regarding Use of SPICE Components</A>
      <A HREF="#Environments2">Environments</A>
         <A HREF="#New Environments2">New Environments</A>
         <A HREF="#Deprecated Environments">Deprecated Environments</A>
         <A HREF="#Complete List of Supported Environments2">Complete List of Supported Environments</A>
         <A HREF="#Use of -fPIC/-KPIC Option">Use of -fPIC/-KPIC Option</A>
         <A HREF="#Lahey Memory Issue Related to File Opening/Closing2">Lahey Memory Issue Related to File Opening/Closing</A>
         <A HREF="#Scratch EK File Issue in Icy on PC/Windows2">Scratch EK File Issue in Icy on PC/Windows</A>
      <A HREF="#Documentation2">Documentation</A>
      <A HREF="#New Applications">New Applications</A>
         <A HREF="#MSOPCK">MSOPCK</A>
         <A HREF="#SPKDIFF">SPKDIFF</A>
      <A HREF="#SPICELIB/CSPICE/Icy">SPICELIB/CSPICE/Icy</A>
         <A HREF="#KCLEAR Routine">KCLEAR Routine</A>
         <A HREF="#DAF Comment Area Routines">DAF Comment Area Routines</A>
         <A HREF="#DAF-based Kernel Open Routines">DAF-based Kernel Open Routines</A>
         <A HREF="#DAFONW Routine">DAFONW Routine</A>
         <A HREF="#SPKW02, SPKW03, and SPKW05 Routines">SPKW02, SPKW03, and SPKW05 Routines</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions2">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#CSPICE Only">CSPICE Only</A>
         <A HREF="#New Wrappers">New Wrappers</A>
      <A HREF="#Icy (IDL interface to CSPICE) Only">Icy (IDL interface to CSPICE) Only</A>
         <A HREF="#New Interfaces0">New Interfaces</A>
      <A HREF="#Bug Fixes2">Bug Fixes</A>
         <A HREF="#CKE05">CKE05</A>
         <A HREF="#ET2LST">ET2LST</A>
         <A HREF="#UNLOAD">UNLOAD</A>
         <A HREF="#STR2ET">STR2ET</A>
         <A HREF="#SURFPT">SURFPT</A>
         <A HREF="#CHRONOS">CHRONOS</A>
         <A HREF="#Icy">Icy</A>
         <A HREF="#MKSPK1">MKSPK</A>
   <A HREF="#Version 60 --- December 2005">Version 60 --- December 2005</A>
      <A HREF="#Bug Fixes3">Bug Fixes</A>
         <A HREF="#Access to High Precision Binary Earth PCK">Access to High Precision Binary Earth PCK</A>
   <A HREF="#Version 59 --- November 2005">Version 59 --- November 2005</A>
      <A HREF="#Rules Regarding Use of SPICE Components0">Rules Regarding Use of SPICE Components</A>
      <A HREF="#Environments3">Environments</A>
         <A HREF="#New Environments3">New Environments</A>
         <A HREF="#Supported Environments">Supported Environments</A>
         <A HREF="#Optimization for C/Icy environments">Optimization for C/Icy environments</A>
         <A HREF="#Lahey Memory Issue Related to File Opening/Closing3">Lahey Memory Issue Related to File Opening/Closing</A>
         <A HREF="#Scratch EK File Issue in Icy on PC/Windows3">Scratch EK File Issue in Icy on PC/Windows</A>
      <A HREF="#SPICELIB/CSPICE/Icy0">SPICELIB/CSPICE/Icy</A>
         <A HREF="#Loading of Non-Native Text Kernels Files">Loading of Non-Native Text Kernels Files</A>
         <A HREF="#Additional Testing">Additional Testing</A>
         <A HREF="#Deprecation of BODVAR in favor of BODVRD and BODVCD">Deprecation of BODVAR in favor of BODVRD and BODVCD</A>
         <A HREF="#``In Place'' Routines">``In Place'' Routines</A>
         <A HREF="#SPK Segment Buffer Increase">SPK Segment Buffer Increase</A>
         <A HREF="#EK Buffer Increased">EK Buffer Increased</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions3">Built-in NAIF ID Code/Name Definitions</A>
         <A HREF="#Documentation3">Documentation</A>
      <A HREF="#CSPICE">CSPICE</A>
         <A HREF="#New Wrappers0">New Wrappers</A>
      <A HREF="#Icy (Interactive Data Language interface to CSPICE)">Icy (Interactive Data Language interface to CSPICE)</A>
         <A HREF="#Vectorization">Vectorization</A>
         <A HREF="#New interfaces">New interfaces</A>
      <A HREF="#Bug Fixes4">Bug Fixes</A>
         <A HREF="#Non-standard Use of Duplicate Arguments in FORTRAN">Non-standard Use of Duplicate Arguments in FORTRAN</A>
         <A HREF="#NEARPT">NEARPT</A>
         <A HREF="#ET2LST0">ET2LST</A>
         <A HREF="#GETFOV0">GETFOV</A>
         <A HREF="#CKW03">CKW03</A>
         <A HREF="#INEDPL">INEDPL</A>
         <A HREF="#INSRTC">INSRTC</A>
         <A HREF="#String Parsing Routines">String Parsing Routines</A>
   <A HREF="#Version 58 --- January 2005">Version 58 --- January 2005</A>
      <A HREF="#Environments4">Environments</A>
      <A HREF="#SPICELIB/CSPICE/Icy1">SPICELIB/CSPICE/Icy</A>
         <A HREF="#Parameterized Dynamic Frames">Parameterized Dynamic Frames</A>
         <A HREF="#CK/SPK Coverage Summary Routines">CK/SPK Coverage Summary Routines</A>
         <A HREF="#Planetographic Coordinate Conversion Routines">Planetographic Coordinate Conversion Routines</A>
         <A HREF="#``L-sub-S'' Solar Longitude Routine">``L-sub-S'' Solar Longitude Routine</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions4">Built-in NAIF ID Code/Name Definitions</A>
         <A HREF="#Documentation4">Documentation</A>
      <A HREF="#CSPICE0">CSPICE</A>
         <A HREF="#New Wrappers1">New Wrappers</A>
      <A HREF="#Icy (Interactive Data Language interface to CSPICE)">Icy (Interactive Data Language interface to CSPICE)</A>
         <A HREF="#Vectorization0">Vectorization</A>
         <A HREF="#Windows">Windows</A>
         <A HREF="#Other new interfaces">Other new interfaces</A>
      <A HREF="#Bug Fixes5">Bug Fixes</A>
         <A HREF="#MKSPK Processing of TLE">MKSPK Processing of TLE</A>
         <A HREF="#MKSPK Adding Comments When Appending to Existing SPK">MKSPK Adding Comments When Appending to Existing SPK</A>
         <A HREF="#Icy/cspice_getfov">Icy/cspice_getfov</A>
         <A HREF="#DVPOOL/dvpool_c/cspice_dvpool">DVPOOL/dvpool_c/cspice_dvpool</A>
         <A HREF="#CSPICE/kdata_c Function">CSPICE/kdata_c Function</A>
         <A HREF="#FRINFO/frinfo_c/cspice_frinfo">FRINFO/frinfo_c/cspice_frinfo</A>
   <A HREF="#Version 57 --- March 2004">Version 57 --- March 2004</A>
      <A HREF="#Environments5">Environments</A>
      <A HREF="#Icy0">Icy</A>
      <A HREF="#SPICELIB/CSPICE">SPICELIB/CSPICE</A>
         <A HREF="#SRFXPT0">SRFXPT</A>
         <A HREF="#Support for Satellite IDs in the Range 10000-99999">Support for Satellite IDs in the Range 10000-99999</A>
         <A HREF="#Detection of Non-native Text Files">Detection of Non-native Text Files</A>
         <A HREF="#Documentation5">Documentation</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions5">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#INSPEKT">INSPEKT</A>
      <A HREF="#TOBIN">TOBIN</A>
   <A HREF="#Version 56 --- August 2003">Version 56 --- August 2003</A>
      <A HREF="#Environments6">Environments</A>
      <A HREF="#SPICELIB/CSPICE0">SPICELIB/CSPICE</A>
         <A HREF="#Documentation6">Documentation</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions6">Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#CHRONOS0">CHRONOS</A>
      <A HREF="#Bug Fixes6">Bug Fixes</A>
         <A HREF="#Reading Files with MAC-OSX Absoft FORTRAN Toolkit">Reading Files with MAC-OSX Absoft FORTRAN Toolkit</A>
         <A HREF="#DAS Scratch Files">DAS Scratch Files</A>
         <A HREF="#Argument Checking in CSPICE Error Handling Functions">Argument Checking in CSPICE Error Handling Functions</A>
   <A HREF="#Version 55 --- March 2003">Version 55 --- March 2003</A>
      <A HREF="#Environments7">Environments</A>
      <A HREF="#SPICELIB">SPICELIB</A>
         <A HREF="#SPKW01">SPKW01</A>
         <A HREF="#DASCLS">DASCLS</A>
         <A HREF="#SPKBSR">SPKBSR</A>
         <A HREF="#Kernel POOL">Kernel POOL</A>
         <A HREF="#Type 1 SCLK">Type 1 SCLK</A>
      <A HREF="#CSPICE1">CSPICE</A>
         <A HREF="#New CSPICE wrappers">New CSPICE wrappers</A>
      <A HREF="#Bug Fixes7">Bug Fixes</A>
         <A HREF="#Built-in NAIF ID Code/Name Definitions7">Built-in NAIF ID Code/Name Definitions</A>
         <A HREF="#DASCUD">DASCUD</A>
         <A HREF="#OSCELT">OSCELT</A>
         <A HREF="#CKE050">CKE05</A>
         <A HREF="#CKBRIEF3">CKBRIEF</A>
   <A HREF="#Version 54 --- December 2002">Version 54 --- December 2002</A>
      <A HREF="#Mailing Lists">Mailing Lists</A>
      <A HREF="#Environments8">Environments</A>
      <A HREF="#COOKBOOK Programs">COOKBOOK Programs</A>
      <A HREF="#New Built-in NAIF ID Code/Name Definitions">New Built-in NAIF ID Code/Name Definitions</A>
      <A HREF="#Documentation7">Documentation</A>
      <A HREF="#Bug Fixes8">Bug Fixes</A>
         <A HREF="#Built-in Body-Fixed Frame for Pan">Built-in Body-Fixed Frame for Pan</A>
         <A HREF="#Surface Intercept Routine">Surface Intercept Routine</A>
         <A HREF="#DAS Writer Routines">DAS Writer Routines</A>
         <A HREF="#CSPICE Cell Implementation">CSPICE Cell Implementation</A>
         <A HREF="#Body Name to Associated Frame Conversion Routine">Body Name to Associated Frame Conversion Routine</A>
         <A HREF="#CHRONOS1">CHRONOS</A>
   <A HREF="#Version 53 --- September 2002">Version 53 --- September 2002</A>
      <A HREF="#Environments9">Environments</A>
      <A HREF="#CSPICE2">CSPICE</A>
         <A HREF="#New CSPICE wrappers for cell, set, and windows routines">New CSPICE wrappers for cell, set, and windows routines</A>
         <A HREF="#New CSPICE wrappers for sorting and searching routines">New CSPICE wrappers for sorting and searching routines</A>
         <A HREF="#New CSPICE wrappers for string manipulation and parsing routines">New CSPICE wrappers for string manipulation and parsing routines</A>
      <A HREF="#SPICELIB0">SPICELIB</A>
         <A HREF="#SPK Type 18">SPK Type 18</A>
         <A HREF="#CK Type 5">CK Type 5</A>
      <A HREF="#BRIEF1">BRIEF</A>
      <A HREF="#COOKBOOK">COOKBOOK</A>
      <A HREF="#Bug Fixes9">Bug Fixes</A>
         <A HREF="#ID-to-name Translation">ID-to-name Translation</A>
         <A HREF="#Built-in Body-Fixed Frames">Built-in Body-Fixed Frames</A>
         <A HREF="#Binary architecture consistency check at run-time">Binary architecture consistency check at run-time</A>
         <A HREF="#Long/truncated lines in text kernel files">Long/truncated lines in text kernel files</A>
         <A HREF="#VMS Read-Only Access File Open Failure">VMS Read-Only Access File Open Failure</A>
   <A HREF="#Version 52 --- January 2002">Version 52 --- January 2002</A>
      <A HREF="#Environments10">Environments</A>
      <A HREF="#SPICELIB1">SPICELIB</A>
         <A HREF="#Run-Time Binary File Format Translation">Run-Time Binary File Format Translation</A>
         <A HREF="#Open File Limit Increase">Open File Limit Increase</A>
         <A HREF="#SPK aberration corrections">SPK aberration corrections</A>
         <A HREF="#Instrument Kernel Support">Instrument Kernel Support</A>
         <A HREF="#Kernel POOL0">Kernel POOL</A>
         <A HREF="#Jacobian routines">Jacobian routines</A>
         <A HREF="#NAIF ID to Object Name Mapping">NAIF ID to Object Name Mapping</A>
         <A HREF="#Documentation8">Documentation</A>
      <A HREF="#CSPICE3">CSPICE</A>
         <A HREF="#New CSPICE wrappers for EK routines">New CSPICE wrappers for EK routines</A>
         <A HREF="#Miscellaneous new CSPICE wrappers">Miscellaneous new CSPICE wrappers</A>
      <A HREF="#CKBRIEF4">CKBRIEF</A>
      <A HREF="#COMMNT">COMMNT</A>
      <A HREF="#MKSPK2">MKSPK</A>
      <A HREF="#VERSION">VERSION</A>
      <A HREF="#Bug Fixes10">Bug Fixes</A>
         <A HREF="#CK, PCK, and SPK segment buffering and selection">CK, PCK, and SPK segment buffering and selection</A>
         <A HREF="#Const-qualification for various CSPICE interfaces">Const-qualification for various CSPICE interfaces</A>
         <A HREF="#CSPICE function gcpool_c fixed">CSPICE function gcpool_c fixed</A>
         <A HREF="#MOVED fix for Fortran PC Linux platform">MOVED fix for Fortran PC Linux platform</A>
         <A HREF="#EK query processing using LIKE operator and null values">EK query processing using LIKE operator and null values</A>
         <A HREF="#EK time conversion">EK time conversion</A>
         <A HREF="#EK documentation">EK documentation</A>
         <A HREF="#Source code clean-up">Source code clean-up</A>
   <A HREF="#Version 51 --- April 2000">Version 51 --- April 2000</A>
      <A HREF="#SPICELIB2">SPICELIB</A>
         <A HREF="#Instrument Kernel Support0">Instrument Kernel Support</A>
         <A HREF="#Binary Kernel Recognition">Binary Kernel Recognition</A>
         <A HREF="#CK">CK</A>
         <A HREF="#SPK">SPK</A>
         <A HREF="#Miscellaneous">Miscellaneous</A>
      <A HREF="#MKSPK3">MKSPK</A>
      <A HREF="#SPKMERGE">SPKMERGE</A>
         <A HREF="#Bug Fixes11">Bug Fixes</A>
   <A HREF="#Version 50 --- October 1999">Version 50 --- October 1999</A>
      <A HREF="#CSPICE4">CSPICE</A>
      <A HREF="#Additions and Extensions to SPICE routines">Additions and Extensions to SPICE routines</A>
         <A HREF="#Loading Kernels">Loading Kernels</A>
         <A HREF="#Position Only Interface.">Position Only Interface.</A>
         <A HREF="#ID-codes">ID-codes</A>
         <A HREF="#Kernel Pool Enhancements">Kernel Pool Enhancements</A>
         <A HREF="#Continuous Spacecraft Clocks">Continuous Spacecraft Clocks</A>
         <A HREF="#Bad FTP File Transfer Detection">Bad FTP File Transfer Detection</A>
         <A HREF="#CK Writer Enhancements">CK Writer Enhancements</A>
         <A HREF="#Bugs">Bugs</A>
      <A HREF="#SPICE Utility Programs">SPICE Utility Programs</A>
         <A HREF="#TOBIN0">TOBIN</A>
         <A HREF="#COMMNT0">COMMNT</A>
         <A HREF="#CKBRIEF5">CKBRIEF</A>
         <A HREF="#MKSPK4">MKSPK</A>
      <A HREF="#Documentation9">Documentation</A>
   <A HREF="#Version 49 --- September 1998">Version 49 --- September 1998</A>
   <A HREF="#Version 48 --- May 1998">Version 48 --- May 1998</A>
   <A HREF="#Version 47 --- July 1997">Version 47 --- July 1997</A>
      <A HREF="#Documentation10">Documentation</A>
      <A HREF="#Software">Software</A>
         <A HREF="#SPK0">SPK</A>
         <A HREF="#Frames">Frames</A>
         <A HREF="#Time">Time</A>
         <A HREF="#Bug Fixes12">Bug Fixes</A>
   <A HREF="#Version 46 --- January 1997">Version 46 --- January 1997</A>
         <A HREF="#Documentation11">Documentation</A>
         <A HREF="#Time0">Time</A>
   <A HREF="#Version 45 --- October 1996">Version 45 --- October 1996</A>
   <A HREF="#Version 44 --- August 1996">Version 44 --- August 1996</A>
         <A HREF="#SPK Subsystem">SPK Subsystem</A>
         <A HREF="#Inspekt">Inspekt</A>
         <A HREF="#Bug Fixes13">Bug Fixes</A>
   <A HREF="#Version 43 --- May 1996">Version 43 --- May 1996</A>
         <A HREF="#Brief">Brief</A>
         <A HREF="#Star Catalogs.">Star Catalogs.</A>
         <A HREF="#CHGIRF">CHGIRF</A>
         <A HREF="#BODTRN">BODTRN</A>
         <A HREF="#Performance Improvements">Performance Improvements</A>
   <A HREF="#Version 42 --- December 1995">Version 42 --- December 1995</A>
   <A HREF="#Version 41 --- October 1995">Version 41 --- October 1995</A>
      <A HREF="#Non-inertial Reference Frames">Non-inertial Reference Frames</A>

</PRE>

<HR SIZE=3 NOSHADE>

<BR><BR>
<A NAME="What's New in SPICE"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> What's New in SPICE
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Introduction"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Introduction
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This document describes new and extended capabilities of the latest
   version of the SPICE Toolkit. It also notes bug fixes. Each new version
   of the Toolkit is documented in a separate chapter that is titled with
   the version of the Toolkit. The most recent version of the Toolkit is
   documented first. The next most recent version is documented next, and
   so on.
<P>
 
   The versions of the Toolkit changes described in this document are
<P>
 
<PRE>
   Version 64 --- June 2010
   Version 63 --- April 2009
   Version 62 --- March 2008
   Version 61 --- December 2006
   Version 60 --- December 2005
   Version 59 --- November 2005
   Version 58 --- January 2005
   Version 57 --- March 2004
   Version 56 --- August 2003
   Version 55 --- March 2003
   Version 54 --- December 2002
   Version 53 --- September 2002
   Version 52 --- January 2002
   Version 51 --- April 2000
   Version 50 --- October 1999
   Version 49 --- September 1998
   Version 48 --- May 1998
   Version 47 --- July 1997
   Version 46 --- January 1997
   Version 45 --- October 1996
   Version 44 --- August 1996
   Version 43 --- May 1996
   Version 42 --- December 1995
   Version 41 --- October 1995
</PRE>
<BR><BR>
<A NAME="Version 64 --- June 2010"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 64 --- June 2010
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Environments
</H3><P><BR><BR>
   The SPICE Toolkit is now officially supported on these new environments:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          GFORTRAN / 64bit
      Mac/Intel    OS-X          Intel FORTRAN / 64bit
      PC           Linux         GFORTRAN / 64bit
      PC           Windows       Intel FORTRAN / 64bit
      Sun/Intel    Solaris       SUN FORTRAN / 32bit
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C / 64bit
      PC           Windows       MS Visual C / 64bit
      Sun          Solaris       SUN C / 64bit
      Sun/Intel    Solaris       SUN C / 32bit
      Sun/Intel    Solaris       SUN C / 64bit
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 7.x / 64bit
      PC           Windows       MS Visual C / IDL 7.x / 64bit
 
   Mice:
 
      Mac/Intel    OS-X          Apple C / MATLAB 7.x / 64bit
      PC           Windows       MS Visual C / MATLAB 7.x / 64bit
      Sun/Intel    Solaris       SUN C / MATLAB 7.x / 64bit
 
</PRE>
<BR><BR>
<A NAME="Complete List of Supported Environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Complete List of Supported Environments
</H3><P><BR><BR>
   This is the complete list of environments on which the N0064 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          GFORTRAN / 32bit
      Mac/Intel    OS-X          GFORTRAN / 64bit
      Mac/Intel    OS-X          Intel FORTRAN / 32bit
      Mac/Intel    OS-X          Intel FORTRAN / 64bit
      Mac/PowerPC  OS-X          Absoft FORTRAN / 32bit
      Mac/PowerPC  OS-X          g77 / 32bit
      PC           CYGWIN        g77 / 32bit
      PC           Linux         GFORTRAN / 32bit
      PC           Linux         GFORTRAN / 64bit
      PC           Linux         Intel FORTRAN / 32bit
      PC           Linux         g77 / 32bit
      PC           Windows       Compaq (Digital) FORTRAN / 32bit
      PC           Windows       Intel FORTRAN / 32bit
      PC           Windows       Intel FORTRAN / 64bit
      PC           Windows       Lahey FORTRAN 95 / 32bit
      Sun          Solaris       SUN FORTRAN / 32bit
      Sun/Intel    Solaris       SUN FORTRAN / 32bit
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C / 32bit
      Mac/Intel    OS-X          Apple C / 64bit
      Mac/PowerPC  OS-X          Apple C / 32bit
      PC           CYGWIN        gCC / 32bit
      PC           Linux         gCC / 32bit
      PC           Linux         gCC / 64bit
      PC           Windows       MS Visual C / 32bit
      PC           Windows       MS Visual C / 64bit
      Sun          Solaris       SUN C / 32bit
      Sun          Solaris       SUN C / 64bit
      Sun          Solaris       gCC / 32bit
      Sun          Solaris       gCC / 64bit
      Sun/Intel    Solaris       SUN C / 32bit
      Sun/Intel    Solaris       SUN C / 64bit
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 7.x / 32bit
      Mac/Intel    OS-X          Apple C / IDL 7.x / 64bit
      Mac/PowerPC  OS-X          Apple C / IDL 6.4 / 32bit
      PC           Linux         gCC / IDL 6.4 / 32bit
      PC           Linux         gCC / IDL 6.4 / 64bit
      PC           Windows       MS Visual C / IDL 7.x / 32bit
      PC           Windows       MS Visual C / IDL 7.x / 64bit
      Sun          Solaris       SUN C / IDL 7.x / 32bit
      Sun          Solaris       gCC / IDL 7.x / 32bit
      Sun          Solaris       gCC / IDL 7.x / 64bit
 
   Mice:
 
      Mac/Intel    OS-X          Apple C / MATLAB 7.x / 32bit
      Mac/Intel    OS-X          Apple C / MATLAB 7.x / 64bit
      Mac/PowerPC  OS-X          Apple C / MATLAB 7.x / 32bit
      PC           Linux         gCC / MATLAB 7.x / 32bit
      PC           Linux         gCC / MATLAB 7.x / 64bit
      PC           Windows       MS Visual C / MATLAB 7.x / 32bit
      PC           Windows       MS Visual C / MATLAB 7.x / 64bit
      Sun/Intel    Solaris       SUN C / MATLAB 7.x / 64bit
 
</PRE>
<BR><BR>
<A NAME="Dynamically Linked Executables"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Dynamically Linked Executables
</H3><P><BR><BR>
   For some environments precompiled executables provided in the generic
   Toolkit packages and additional utility program executables provided on
   the Utilities page on the NAIF Web site
   (http://naif.jpl.nasa.gov/naif/utilities.html) are dynamically linked
   and, in order to run, require certain dynamic libraries, usually
   provided with the compiler used to build the executables, to be
   installed on the user's system. This applies to most Mac/OSX, PC/Linux
   and Sun/Solaris environments.
<P>
 
<BR><BR>
<A NAME="Lahey Memory Issue Related to File Opening/Closing"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Lahey Memory Issue Related to File Opening/Closing
</H3><P><BR><BR>
   The Lahey memory issue related to file opening/closing described in the
   N0061 section of this document persists in the N0064 version of the
   Toolkit.
<P>
 
<BR><BR>
<A NAME="Scratch EK File Issue in Icy on PC/Windows"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Scratch EK File Issue in Icy on PC/Windows
</H3><P><BR><BR>
   The scratch EK file issue in Icy on PC/Windows described in the N0061
   section of this document persists in the N0064 version of the Toolkit.
<P>
 
<BR><BR>
<A NAME="Geometry Finder (GF) Subsystem"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Geometry Finder (GF) Subsystem
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0064 version offers a number of additional SPICE Geometry Finder
   (GF) subsystem interfaces.
<P>
 
<BR><BR>
<A NAME="SPICELIB High-Level GF APIs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPICELIB High-Level GF APIs
</H3><P><BR><BR>
   The following High-Level GF APIs were added to SPICELIB:
<P>
 
<PRE>
      GFRR            determines time intervals when a specified
                      constraint on the observer-target range rate
                      is met.
 
      GFUDS           performs a GF search on a user defined scalar
                      quantity. This API is supported by two
                      additional routines UDDC and UDDF.
</PRE>
<BR><BR>
<A NAME="CSPICE High-Level GF APIs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CSPICE High-Level GF APIs
</H3><P><BR><BR>
   The following High-Level GF APIs were added to CSPICE:
<P>
 
<PRE>
      <a href="../cspice/gfrr_c.html">gfrr_c</a>          determines time intervals when a specified
                      constraint on the observer-target range rate
                      is met.
 
      <a href="../cspice/gfuds_c.html">gfuds_c</a>         performs a GF search on a user defined scalar
                      quantity. This API is supported by two
                      additional functions <a href="../cspice/uddc_c.html">uddc_c</a> and <a href="../cspice/uddf_c.html">uddf_c</a>.
</PRE>
<BR><BR>
<A NAME="Icy and Mice High-Level GF APIs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Icy and Mice High-Level GF APIs
</H3><P><BR><BR>
   The following High-Level GF APIs were added to Icy and Mice:
<P>
 
<PRE>
      cspice_gfrr     determines time intervals when a specified
                      constraint on the observer-target range rate
                      is met.
</PRE>
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy/Mice"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy/Mice
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Kernel Pool Variable Name Length Check"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel Pool Variable Name Length Check
</H3><P><BR><BR>
   The routines loading SPICE text kernel files now include a check on the
   length of the kernel pool variable names. The error SPICE(BADVARNAME) is
   signaled if the length of any variable provided in the text kernel file
   exceeds 32 characters. Regardless of language, all Toolkits inherit this
   behavior.
<P>
 
<BR><BR>
<A NAME="CK Buffered Segment Limits"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK Buffered Segment Limits
</H3><P><BR><BR>
   The maximum number of CK segments that can be buffered simultaneously
   has been increased to 50000.
<P>
 
<BR><BR>
<A NAME="SPK Buffered Segment Limits"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK Buffered Segment Limits
</H3><P><BR><BR>
   The maximum number of SPK segments that can be buffered simultaneously
   has been increased to 50000.
<P>
 
<BR><BR>
<A NAME="Kernel Pool Double Precision Buffer Limit"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel Pool Double Precision Buffer Limit
</H3><P><BR><BR>
   The maximum number of double precision values that can be stored in the
   kernel pool has been increased to 200000.
<P>
 
<BR><BR>
<A NAME="SCLK Coefficient Record Limit"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SCLK Coefficient Record Limit
</H3><P><BR><BR>
   The maximum number of SCLK coefficient records that can be buffered has
   been increased to 50000. This is also the limit on the number of
   coefficient records that can be stored in an SCLK kernel.
<P>
 
<BR><BR>
<A NAME="CK writer quaternion magnitude check"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK writer quaternion magnitude check
</H3><P><BR><BR>
   The quaternion magnitude check performed in the CK writers
<P>
 
<PRE>
   CKW01 (<a href="../cspice/ckw01_c.html">ckw01_c</a> in CSPICE) (cspice_ckw01 in Icy and Mice)
   CKW02 (<a href="../cspice/ckw02_c.html">ckw02_c</a> in CSPICE) (cspice_ckw02 in Icy and Mice)
   CKW03 (<a href="../cspice/ckw03_c.html">ckw03_c</a> in CSPICE) (cspice_ckw03 in Icy and Mice)
   CKW05 (<a href="../cspice/ckw05_c.html">ckw05_c</a> in CSPICE)
</PRE>
   has been relaxed from checking for a magnitude ``close'' to 1 to simply
   ensuring that the input quaternions are non-zero.
<P>
 
<BR><BR>
<A NAME="New SPICELIB Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New SPICELIB Interfaces
</H3><P><BR><BR>
   The following 3d and 6d vector APIs were added to SPICELIB:
<P>
 
<PRE>
      dvnorm          calculates the derivative of the norm of a
                      3-vector.
 
      dhfa            calculates the value of the time derivative
                      of the half angle of a spherical body given
                      a state vector and body radius.
</PRE>
   The following auxiliary APIs were added to SPICELIB:
<P>
 
<PRE>
      bodc2s          translates a body ID code to either the
                      corresponding name, or if no name to ID code
                      mapping exists, the string representation
                      of the body ID value.
</PRE>
<BR><BR>
<A NAME="New CSPICE Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE Interfaces
</H3><P><BR><BR>
   The following 3d and 6d vector APIs were added to CSPICE:
<P>
 
<PRE>
      <a href="../cspice/ducrss_c.html">ducrss_c</a>        computes the unit vector parallel to the
                      cross product of two 3-dimensional vectors,
                      and the derivative of this unit vector.
 
      <a href="../cspice/dvcrss_c.html">dvcrss_c</a>        computes the cross product of two
                      3-dimensional vectors and the derivative of
                      this cross product.
 
      <a href="../cspice/dvnorm_c.html">dvnorm_c</a>        calculates the derivative of the norm of a
                      3-vector.
</PRE>
   The following lower-level DAF access APIs were added to CSPICE:
<P>
 
<PRE>
      <a href="../cspice/dafgsr_c.html">dafgsr_c</a>        reads a portion of the contents of a summary
                      record in a DAF file.
 
      <a href="../cspice/dafrfr_c.html">dafrfr_c</a>        reads the contents of the file record of
                      a DAF.
</PRE>
   The following auxiliary APIs were added to CSPICE:
<P>
 
<PRE>
      <a href="../cspice/bodc2s_c.html">bodc2s_c</a>        translates a body ID code to either the
                      corresponding name, or if no name to ID code
                      mapping exists, the string representation
                      of the body ID value.
 
      <a href="../cspice/dp2hx_c.html">dp2hx_c</a>         converts a double precision number to an
                      equivalent character string using base 16
                      ``scientific notation.''
 
      <a href="../cspice/hx2dp_c.html">hx2dp_c</a>         converts a string representing a double
                      precision number in a base 16 ``scientific
                      notation'' into its equivalent double
                      precision number.
</PRE>
<BR><BR>
<A NAME="New Icy Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Icy Interfaces
</H3><P><BR><BR>
   The following 3d and 6d vector APIs were added to Icy:
<P>
 
<PRE>
      cspice_ducrss   computes the unit vector parallel to the
                      cross product of two 3-dimensional vectors
                      and the derivative of this unit vector.
 
      cspice_dvcrss   computes the cross product of two
                      3-dimensional vectors and the derivative of
                      this cross product.
 
      cspice_dvnorm   calculates the derivative of the norm of a
                      3-vector.
 
      cspice_dvsep    calculates the time derivative of the
                      separation angle between states.
</PRE>
   The following auxiliary APIs were added to Icy:
<P>
 
<PRE>
      cspice_bodc2s   translates a body ID code to either the
                      corresponding name or if no name to ID code
                      mapping exists, the string representation
                      of the body ID value.
 
      cspice_dp2hx    converts a double precision number to an
                      equivalent character string using base 16
                      ``scientific notation.''
 
      cspice_hx2dp    converts a string representing a double
                      precision number in a base 16 ``scientific
                      notation'' into its equivalent double
                      precision number.
</PRE>
<BR><BR>
<A NAME="New Mice Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Mice Interfaces
</H3><P><BR><BR>
   The following 3d and 6d vector APIs were added to Mice:
<P>
 
<PRE>
      cspice_ducrss   computes the unit vector parallel to the
                      cross product of two 3-dimensional vectors
                      and the derivative of this unit vector.
 
      cspice_dvcrss   computes the cross product of two
                      3-dimensional vectors and the derivative of
                      this cross product.
 
      cspice_dvdot    computes the time derivative of the dot
                      product of two position vectors.
 
      cspice_dvhat    calculates the unit vector corresponding
                      to a state or states and the derivative of
                      the unit vector.
 
      cspice_dvnorm   calculates the derivative of the norm of a
                      3-vector.
 
      cspice_dvsep    calculates the time derivative of the
                      separation angle between states.
 
      cspice_vnorm    returns the magnitude of a double
                      precision, 3-dimensional array or set of
                      such arrays.
 
      cspice_vperp    calculates the component of a vector
                      perpendicular to a second vector.
</PRE>
   The following EK-access APIs were added to Mice:
<P>
 
<PRE>
      cspice_ekfind   finds E-kernel data that satisfy a set of
                      constraints.
 
      cspice_eknelt   returns the number of elements in a
                      specified column entry in the current row.
 
      cspice_ekgc     returns an element of string (character)
                      data from a specified row in a specified
                      column of the set of rows matching
                      the previous cspice_ekfind query.
 
      cspice_ekgd     returns an element of double precision
                      data from a specified row in a specified
                      column of the set of rows matching
                      the previous cspice_ekfind query.
 
      cspice_ekgi     returns an element of integer
                      data from a specified row in a specified
                      column of the set of rows matching
                      the previous cspice_ekfind query.
</PRE>
   The following time conversion APIs were added to Mice:
<P>
 
<PRE>
      cspice_unitim   returns the double precision value of
                      an input epoch converted from one uniform
                      time scale to another.
 
</PRE>
   The following auxiliary APIs were added to Mice:
<P>
 
<PRE>
      cspice_bodc2s   translates a body ID code to either the
                      corresponding name, or if no name to ID code
                      mapping exists, the string representation
                      of the body ID value.
</PRE>
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
            -5   AKATSUKI
            -5   VCO
          -121   BEPICOLOMBO
          -177   GRAIL-A
          -181   GRAIL-B
          -202   MAVEN
          -205   SOIL MOISTURE ACTIVE AND PASSIVE
          -205   SMAP
          -362   RADIATION BELT STORM PROBE A
          -362   RBSP_A
          -363   RADIATION BELT STORM PROBE B
          -363   RBSP_B
 
   Satellites:
 
           550   HERSE
           653   AEGAEON
 
   Comets:
 
       1000093   TEMPEL_1
 
   Asteroids:
 
       2000021   LUTETIA
       2004179   TOUTATIS
 
</PRE>
<BR><BR>
<A NAME="Documentation"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Overwriting Input Arguments Not Allowed"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Overwriting Input Arguments Not Allowed
</H3><P><BR><BR>
   The following SPICELIB routines were designed to allow applications to
   call them in such a way that input arguments could overwrite output
   arguments. However, this usage is a violation of the Fortran 77
   standard; it also causes failures in some environments when SPICELIB is
   compiled with optimization (currently SPICELIB is optimized only for
   Intel Fortran environments). So, the header documentation of affected
   SPICELIB routines has been updated to not suggest this calling
   technique. The affected routines are:
<P>
 
<PRE>
   CYCLAD  CYCLAI  DUCRSS  DVCRSS  INVERT  INVSTM  MTXM
   MTXV    MXM     MXMT    MXV     PACKAC  PACKAD  PACKAI
   ROTMAT  ROTVEC  SAELGV  UNORM   UNORMG  VADD    VADDG
   VCRSS   VHATG   VMINUG  VMINUS  VPROJ   VPROJG  VSCL
   VSCLG   VSUB    VSUBG   XPOSBL  XPOSE   XPOSEG
</PRE>
<BR><BR>
<A NAME="Bug Fixes"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Kernel Pool Watcher Deletion in TKFRAM"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel Pool Watcher Deletion in TKFRAM
</H3><P><BR><BR>
   The watcher deletion algorithm has been corrected to delete watchers
   only when the variables they watch are dumped from the local buffer.
<P>
 
<BR><BR>
<A NAME="Frame Change in CKGP"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Frame Change in CKGP
</H3><P><BR><BR>
   CKGP now computes the transformation from the requested frame to the
   applicable CK segment's base frame via a call to REFCHG. Formerly CKGP
   performed this transformation using FRMCHG, which required that angular
   velocity data describing the relative motion of these frames be
   available.
<P>
 
<BR><BR>
<A NAME="ROTGET Dynamic Frame ID"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ROTGET Dynamic Frame ID
</H3><P><BR><BR>
   ROTGET formerly passed the frame class ID rather than the frame ID to
   private routine ZZDYNROT, which handles dynamic frame transformations.
   Since by convention these IDs are identical for dynamic frames, the
   error had no practical effect. The error has been corrected. The shadow
   private routine ZZROTGT0 has been corrected as well. Note that the error
   does not apply to the second-level private shadow routine ZZROTGT1.
<P>
 
<BR><BR>
<A NAME="ZZEKQCON Initialization Error"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ZZEKQCON Initialization Error
</H3><P><BR><BR>
   The private routine ZZEKQCON could in some cases access uninitialized
   variables when working with null column entries. This has been
   corrected.
<P>
 
<BR><BR>
<A NAME="ZZEKRD03 Memory Violation Error"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ZZEKRD03 Memory Violation Error
</H3><P><BR><BR>
   The private routine ZZEKRD03 had a bug that caused it to overwrite local
   memory. Prior to the N0064 version of SPICELIB, this error had been
   benign on all supported platforms. The error has been corrected.
<P>
 
<BR><BR>
<A NAME="EK Strings Longer Than 1024 Characters"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EK Strings Longer Than 1024 Characters
</H3><P><BR><BR>
   Although the EK Required Reading states that variable-length strings in
   EK columns are limited to 1024 characters in length, the EK writer
   routines don't enforce this limit, and some users have created kernels
   that violate the limit. Various routines that support EK query and fetch
   operations had assumed that the limit was in effect and were subject to
   substring boundary violations when these long strings were encountered.
   In addition, the semantics of string comparisons for excessively long
   strings were undefined.
<P>
 
   A compromise solution was selected: EK routines that perform
   variable-length EK column entry string comparisons now treat only the
   first 1024 characters of strings as significant.
<P>
 
   The following private routines were updated to effect this change:
<P>
 
<PRE>
   ZZEKECMP
   ZZEKFRX
   ZZEKSCMP
   ZZEKVMCH
</PRE>
   This fix also corrects the substring boundary violations.
<P>
 
<BR><BR>
<A NAME="RETURN Mode Logic in Various Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> RETURN Mode Logic in Various Routines
</H3><P><BR><BR>
   The following routines were corrected to ensure that they avoid making
   branch decisions based on uninitialized data after encountering a SPICE
   error while in RETURN mode:
<P>
 
<PRE>
   ILUMIN
   SPKAPO
   SPKEZ
   SUBPNT
   SUBSLR
   ZZSPKEZ0
   ZZSPKEZ1
</PRE>
<BR><BR>
<A NAME="Version 63 --- April 2009"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 63 --- April 2009
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Environments0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Environments
</H3><P><BR><BR>
   The SPICE Toolkit is now officially supported on these new environments:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          GFORTRAN
      PC           Linux         GFORTRAN
 
   Icy:
 
      PC           Linux         gCC / IDL 6.4 / 64bit
      Sun          Solaris       gCC / IDL 6.4 / 64bit
 
   Mice:
 
      PC           Linux         gCC / MATLAB 7.x / 64bit
 
</PRE>
<BR><BR>
<A NAME="Complete List of Supported Environments0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Complete List of Supported Environments
</H3><P><BR><BR>
   This is the complete list of environments on which the N0063 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          Intel FORTRAN
      Mac/Intel    OS-X          GFORTRAN
      Mac/PowerPC  OS-X          Absoft FORTRAN
      Mac/PowerPC  OS-X          g77
      PC           CYGWIN        g77
      PC           Linux         g77
      PC           Linux         GFORTRAN
      PC           Linux         Intel FORTRAN
      PC           Windows       Compaq Visual (Digital) FORTRAN
      PC           Windows       Intel FORTRAN
      PC           Windows       Lahey FORTRAN 95
      Sun          Solaris       SUN FORTRAN
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C
      Mac/PowerPC  OS-X          Apple C
      PC           CYGWIN        gCC
      PC           Linux         gCC / 32bit
      PC           Linux         gCC / 64bit
      PC           Windows       MS Visual C
      Sun          Solaris       gCC / 32bit
      Sun          Solaris       gCC / 64bit
      Sun          Solaris       SUN C
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 6.4 / 32bit
      Mac/PowerPC  OS-X          Apple C / IDL 6.4 / 32bit
      PC           Linux         gCC / IDL 6.4 / 32bit
      PC           Linux         gCC / IDL 6.4 / 64bit
      PC           Windows       MS Visual C / IDL 6.4 / 32bit
      Sun          Solaris       gCC / IDL 6.4 / 32bit
      Sun          Solaris       gCC / IDL 6.4 / 64bit
      Sun          Solaris       SUN C / IDL 6.4 / 32bit
 
   Mice:
 
      Mac/Intel    OS-X          Apple C / MATLAB 7.x / 32bit
      Mac/PowerPC  OS-X          Apple C / MATLAB 7.x / 32bit
      PC           Linux         gCC / MATLAB 7.x / 32bit
      PC           Linux         gCC / MATLAB 7.x / 64bit
      PC           Windows       MS Visual C / MATLAB 7.x / 32bit
 
</PRE>
<BR><BR>
<A NAME="Lahey Memory Issue Related to File Opening/Closing0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Lahey Memory Issue Related to File Opening/Closing
</H3><P><BR><BR>
   The Lahey memory issue related to file opening/closing described in the
   N0061 section of this document still persists in the N0063 version of
   the Toolkit.
<P>
 
<BR><BR>
<A NAME="Scratch EK File Issue in Icy on PC/Windows0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Scratch EK File Issue in Icy on PC/Windows
</H3><P><BR><BR>
   The scratch EK file issue in Icy on PC/Windows described in the N0061
   section of this document still persists in the N0063 version of the
   Toolkit.
<P>
 
<BR><BR>
<A NAME="Geometry Finder (GF) Subsystem"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Geometry Finder (GF) Subsystem
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0063 version offers the first official release of the initial set
   of the SPICE Geometry Finder (GF) subsystem interfaces. The GF subsystem
   answers questions such as:
<P>
 
<UL>
<TT>--</TT> find the time(s) or time span(s) when a selected orbital geometric
condition is "true" (e.g. a condition such as an occultation or transit)
<BR><BR></UL>
<UL>
<TT>--</TT> find the time(s) or time span(s) when a specified geometric quantity, such
as range or phase angle, is within a specified range.
<BR><BR></UL>
   The GF Required Reading document, <a href="../req/gf.html">gf.req</a>, provides a comprehensive
   description of the GF subsystem and its high-, mid-, and low-level APIs
   and includes numerous usage examples.
<P>
 
   For your convenience, the language-specific high-level GF APIs included
   in this release are listed in the three subsections below.
<P>
 
<BR><BR>
<A NAME="SPICELIB High-Level GF APIs0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPICELIB High-Level GF APIs
</H3><P><BR><BR>
   SPICELIB High-Level GF APIs for finding times of events satisfying
   numerical constraints are:
<P>
 
<PRE>
      GFDIST          determines time intervals when a specified
                      constraint on observer-target distance is met.
 
      GFPOSC          determines time intervals when a coordinate of an
                      observer-target position vector satisfies a
                      numerical constraint.
 
      GFSEP           determines time intervals when the angular
                      separation between the position vectors of two
                      target bodies relative to an observer satisfies a
                      numerical relationship.
 
      GFSNTC          determines time intervals when a coordinate of a
                      ray-surface intercept position vector satisfies a
                      numerical constraint.
 
      GFSUBC          determines time intervals when a coordinate of a
                      sub-observer point position vector satisfies a
                      numerical constraint.
</PRE>
   SPICELIB High-Level GF APIs for finding times of events satisfying FOV
   constraints are:
<P>
 
<PRE>
      GFRFOV          determines time intervals when a specified ray
                      intersects the space bounded by the field-of-view
                      (FOV) of a specified instrument.
 
      GFTFOV          determines time intervals when a specified
                      ephemeris object intersects the space bounded by
                      the field-of-view (FOV) of a specified
                      instrument.
</PRE>
   SPICELIB High-Level GF APIs for finding times of occultations are:
<P>
 
<PRE>
      GFOCLT          determines time intervals when an observer sees
                      one target occulted by another.
</PRE>
<BR><BR>
<A NAME="CSPICE High-Level GF APIs0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CSPICE High-Level GF APIs
</H3><P><BR><BR>
   CSPICE High-Level GF APIs for finding times of events satisfying
   numerical constraints are:
<P>
 
<PRE>
      <a href="../cspice/gfdist_c.html">gfdist_c</a>        determines time intervals when a specified
                      constraint on observer-target distance is met.
 
      <a href="../cspice/gfposc_c.html">gfposc_c</a>        determines time intervals when a coordinate of an
                      observer-target position vector satisfies a
                      numerical constraint.
 
      <a href="../cspice/gfsep_c.html">gfsep_c</a>         determines time intervals when the angular
                      separation between the position vectors of two
                      target bodies relative to an observer satisfies a
                      numerical relationship.
 
      <a href="../cspice/gfsntc_c.html">gfsntc_c</a>        determines time intervals when a coordinate of a
                      ray-surface intercept position vector satisfies a
                      numerical constraint.
 
      <a href="../cspice/gfsubc_c.html">gfsubc_c</a>        determines time intervals when a coordinate of a
                      sub-observer point position vector satisfies a
                      numerical constraint.
</PRE>
   CSPICE High-Level GF APIs for finding times of events satisfying FOV
   constraints are:
<P>
 
<PRE>
      <a href="../cspice/gfrfov_c.html">gfrfov_c</a>        determines time intervals when a specified ray
                      intersects the space bounded by the field-of-view
                      (FOV) of a specified instrument.
 
      <a href="../cspice/gftfov_c.html">gftfov_c</a>        determines time intervals when a specified
                      ephemeris object intersects the space bounded by
                      the field-of-view (FOV) of a specified
                      instrument.
</PRE>
   CSPICE High-Level GF APIs for finding times of occultations are:
<P>
 
<PRE>
      <a href="../cspice/gfoclt_c.html">gfoclt_c</a>        determines time intervals when an observer sees
                      one target occulted by another.
</PRE>
<BR><BR>
<A NAME="Icy and Mice High-Level GF APIs0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Icy and Mice High-Level GF APIs
</H3><P><BR><BR>
   Icy and Mice High-Level GF APIs for finding times of events satisfying
   numerical constraints are:
<P>
 
<PRE>
      cspice_gfdist   determines time intervals when a specified
                      constraint on observer-target distance is met.
 
      cspice_gfposc   determines time intervals when a coordinate of an
                      observer-target position vector satisfies a
                      numerical constraint.
 
      cspice_gfsep    determines time intervals when the angular
                      separation between the position vectors of two
                      target bodies relative to an observer satisfies a
                      numerical relationship.
 
      cspice_gfsntc   determines time intervals when a coordinate of a
                      ray-surface intercept position vector satisfies a
                      numerical constraint.
 
      cspice_gfsubc   determines time intervals when a coordinate of a
                      sub-observer point position vector satisfies a
                      numerical constraint.
</PRE>
   Icy and Mice High-Level GF APIs for finding times of events satisfying
   FOV constraints are:
<P>
 
<PRE>
      cspice_gfrfov   determines time intervals when a specified ray
                      intersects the space bounded by the field-of-view
                      (FOV) of a specified instrument.
 
      cspice_gftfov   determines time intervals when a specified
                      ephemeris object intersects the space bounded by
                      the field-of-view (FOV) of a specified
                      instrument.
</PRE>
   Icy and Mice High-Level GF APIs for finding times of occultations are:
<P>
 
<PRE>
      cspice_gfoclt   determines time intervals when an observer sees
                      one target occulted by another.
</PRE>
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy/Mice0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy/Mice
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SURFPV/surfpv_c (SPICELIB/CSPICE only)"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SURFPV/<a href="../cspice/surfpv_c.html">surfpv_c</a> (SPICELIB/CSPICE only)
</H3><P><BR><BR>
   The SURFPV routine (<a href="../cspice/surfpv_c.html">surfpv_c</a> in SPICE) finding the state (position and
   velocity) of the surface intercept defined by a specified ray, ray
   velocity, and ellipsoid was added to the Toolkit.
<P>
 
<BR><BR>
<A NAME="DVSEP/dvsep_c (SPICELIB/CSPICE only)"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DVSEP/<a href="../cspice/dvsep_c.html">dvsep_c</a> (SPICELIB/CSPICE only)
</H3><P><BR><BR>
   The DVSEP function (<a href="../cspice/dvsep_c.html">dvsep_c</a> in CSPICE) calculating the time derivative
   of the separation angle between two input states was added to the
   Toolkit.
<P>
 
<BR><BR>
<A NAME="GETFOV"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> GETFOV
</H3><P><BR><BR>
   The header of the GETFOV routine (<a href="../cspice/getfov_c.html">getfov_c</a> in CSPICE, cspice_getfov in
   Icy and Mice) was updated to provide a comprehensive specification of
   the IK keywords used to define FOVs and to include more practical
   examples of FOV definitions.
<P>
 
<BR><BR>
<A NAME="FURNSH"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> FURNSH
</H3><P><BR><BR>
   The FURNSH routine (<a href="../cspice/furnsh_c.html">furnsh_c</a> in CSPICE, cspice_furnsh in Icy and Mice)
   was updated to support continued path values and to reject files with
   names longer than 255 characters.
<P>
 
<BR><BR>
<A NAME="Improved Error Messages from PXFORM/SXFORM"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Improved Error Messages from PXFORM/SXFORM
</H3><P><BR><BR>
   The formerly rather cryptic error messages ``There is insufficient
   information available to transform from ... to frame ....'' generated by
   PXFORM/SXFORM (<a href="../cspice/pxform_c.html">pxform_c</a>/<a href="../cspice/sxform_c.html">sxform_c</a> in CSPICE, cspice_pxform/cspice_sxform
   in Icy and Mice) have been improved to provide more context and to
   suggest what SPICE data may be missing.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -5    PLC
           -5    PLANET-C
           -68   MMO
           -68   MERCURY MAGNETOSPHERIC ORBITER
           -69   MPO
           -69   MERCURY PLANETARY ORBITER
          -140   EPOCH
          -140   DIXI
 
   Asteroids:
 
       2002867   STEINS
 
</PRE>
<BR><BR>
<A NAME="Mice (MATLAB interface to CSPICE) Only"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Mice (MATLAB interface to CSPICE) Only
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Interfaces
</H3><P><BR><BR>
   NAIF added the following interfaces to Mice for this release:
<P>
 
<PRE>
   cspice_cgv2el
   cspice_el2cgv
   cspice_lmpool
   cspice_nvc2pl
   cspice_nvp2pl
   cspice_saelgv
   cspice_vrotv
   cspice_wncard
   cspice_wnsumd
   cspice_wnvald
</PRE>
<BR><BR>
<A NAME="New and Updated Applications"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> New and Updated Applications
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="FRMDIFF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> FRMDIFF
</H3><P><BR><BR>
   The FRMDIFF program was added to the application set included in each
   SPICE toolkit. This program samples orientation of a reference frame
   known to SPICE or computes differences between orientations of two
   reference frames known to SPICE, and either displays this orientation or
   these differences, or shows statistics about it or them.
<P>
 
   Refer to the FRMDIFF User's Guide, <a href="../ug/frmdiff.html">frmdiff.ug</a>, for more information
   about the program.
<P>
 
<BR><BR>
<A NAME="CKBRIEF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF
</H3><P><BR><BR>
   The CKBRIEF program was updated to display names of the frames
   associated with CK IDs when the new command line option ``-n'' is
   specified. The help information that the program displays when the
   command line option ``-h'' is specified was updated for clarity and
   contents.
<P>
 
<BR><BR>
<A NAME="Documentation0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Language Specific Required Reading Documents"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Language Specific Required Reading Documents
</H3><P><BR><BR>
   The following Required Reading documents have been adapted for Icy and
   Mice:
<P>
 
<PRE>
   <a href="../req/gf.html">gf.req</a>
   <a href="../req/frames.html">frames.req</a>
   <a href="../req/kernel.html">kernel.req</a>
   <a href="../req/naif_ids.html">naif_ids.req</a>
   <a href="../req/time.html">time.req</a>
   <a href="../req/windows.html">windows.req</a>
</PRE>
<BR><BR>
<A NAME="CKBRIEF User's Guide"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF User's Guide
</H3><P><BR><BR>
   The CKBRIEF User's Guide, <a href="../ug/ckbrief.html">ckbrief.ug</a>, was fully rewritten to describe
   new features added to the program and to provide examples illustrating
   all aspects of the program's functionality.
<P>
 
<BR><BR>
<A NAME="Bug Fixes0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SINCPT, SRFXPT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SINCPT, SRFXPT
</H3><P><BR><BR>
   The routines SINCPT and SRFXPT were modified to not perform the quick
   test for non-intersection when observer-target distance is less than
   target's maximum radius.
<P>
 
<BR><BR>
<A NAME="POOL Watchers"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> POOL Watchers
</H3><P><BR><BR>
   A new POOL entry point DWPOOL (delete watch from pool) has been added.
   This routine deletes a specified agent from all POOL data structures
   that associate kernel variables and agents.
<P>
 
   Watcher overflow detection logic has been corrected in SWPOOL.
<P>
 
   In the following routines, watched kernel variables are no longer
   considered to be buffered when a lookup of one of these variables fails:
<P>
 
<PRE>
   BODC2N (via changes to ZZBODTRN)
   BODDEF (via changes to ZZBODTRN)
   BODN2C (via changes to ZZBODTRN)
   SCPART
   SCTYPE
   SCTK01 (SC01 entry point)
   SCFM01 (SC01 entry point)
   SCTE01 (SC01 entry point)
   SCET01 (SC01 entry point)
   SCEC01 (SC01 entry point)
   TTRANS
   UNITIM
</PRE>
<BR><BR>
<A NAME="Frame subsystem"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Frame subsystem
</H3><P><BR><BR>
   TKFRAM has been updated to use DWPOOL when it deletes a frame
   specification from its internal buffer; this corrects a bug that caused
   the watcher system to overflow when a large number of TK frame
   specifications were used.
<P>
 
<BR><BR>
<A NAME="Error handling"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Error handling
</H3><P><BR><BR>
   OUTMSG has been updated so that it correctly displays very long strings
   that have been substituted into the long error message.
<P>
 
<BR><BR>
<A NAME="Non-printing Character Detection in Time System"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Non-printing Character Detection in Time System
</H3><P><BR><BR>
   The low-level time string parser routines called by STR2ET (<a href="../cspice/str2et_c.html">str2et_c</a> in
   CSPICE, cspice_str2et in Icy and Mice), UTC2ET (<a href="../cspice/utc2et_c.html">utc2et_c</a> in CSPICE,
   cspice_utc2et in Icy and Mice), and TPARSE (<a href="../cspice/tparse_c.html">tparse_c</a> in CSPICE,
   cspice_tparse in Icy and Mice) were updated to detect non-printing
   characters with ASCII codes greater than 126.
<P>
 
<BR><BR>
<A NAME="MKSPK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MKSPK
</H3><P><BR><BR>
   The program was updated to prevent signaling an error due to round off
   in the computed time step when creating Type 8 or Type 12 SPK files.
<P>
 
<BR><BR>
<A NAME="CKBRIEF0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF
</H3><P><BR><BR>
   Two bugs in CKRBIEF were fixed: hanging up when no value is provided
   after the ``-f'' option and displaying a warning message and an
   incomplete summary in case of an insufficient buffer space. In the
   latter case the program now displays an error message.
<P>
 
<BR><BR>
<A NAME="Version 62 --- March 2008"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 62 --- March 2008
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Environments1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Environments
</H3><P><BR><BR>
   The SPICE Toolkit is now officially supported on this new environment:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      PC           Linux         Intel FORTRAN
 
</PRE>
<BR><BR>
<A NAME="Complete List of Supported Environments1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Complete List of Supported Environments
</H3><P><BR><BR>
   This is the complete list of environments on which the N0062 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          Intel FORTRAN
      Mac/PowerPC  OS-X          Absoft FORTRAN
      Mac/PowerPC  OS-X          g77
      PC           CYGWIN        g77
      PC           Linux         g77
      PC           Linux         Intel FORTRAN
      PC           Windows       Compaq Visual (Digital) FORTRAN
      PC           Windows       Intel FORTRAN
      PC           Windows       Lahey FORTRAN 95
      Sun          Solaris       SUN FORTRAN
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C
      Mac/PowerPC  OS-X          Apple C
      PC           CYGWIN        gCC
      PC           Linux         gCC / 32bit
      PC           Linux         gCC / 64bit
      PC           Windows       MS Visual C
      Sun          Solaris       gCC / 32bit
      Sun          Solaris       gCC / 64bit
      Sun          Solaris       SUN C
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 6.4 / 32bit
      Mac/PowerPC  OS-X          Apple C / IDL 6.4 / 32bit
      PC           Linux         gCC / IDL 6.4 / 32bit
      PC           Windows       MS Visual C / IDL 6.4 / 32bit
      Sun          Solaris       gCC / IDL 6.4 / 32bit
      Sun          Solaris       SUN C / IDL 6.4 / 32bit
 
   Mice:
 
      Mac/Intel    OS-X          Apple C / MATLAB 7.x / 32bit
      Mac/PowerPC  OS-X          Apple C / MATLAB 7.x / 32bit
      PC           Linux         gCC / MATLAB 7.x / 32bit
      PC           Windows       MS Visual C / MATLAB 7.x / 32bit
 
</PRE>
<BR><BR>
<A NAME="Use of -m32 Option"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Use of -m32 Option
</H3><P><BR><BR>
   The CSPICE library provided with the CSPICE, Icy, and Mice toolkits for
   PC / Linux / gCC / 32bit environment compiles with the -m32 option to
   produce 32bit code when recompiled on a 64bit PC.
<P>
 
<BR><BR>
<A NAME="Lahey Memory Issue Related to File Opening/Closing1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Lahey Memory Issue Related to File Opening/Closing
</H3><P><BR><BR>
   The Lahey memory issue related to file opening/closing described in the
   N0061 section of this document still persists in the N0062 version of
   the Toolkit.
<P>
 
<BR><BR>
<A NAME="Scratch EK File Issue in Icy on PC/Windows1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Scratch EK File Issue in Icy on PC/Windows
</H3><P><BR><BR>
   The scratch EK file issue in Icy on PC/Windows described in the N0061
   section of this document still persists in the N0062 version of the
   Toolkit.
<P>
 
<BR><BR>
<A NAME="Mice"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Mice
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0062 version offers the first official release of Mice, the ANSI
   based interface between the MATLAB environment, a product of Mathworks,
   Inc. (http://www.mathworks.com), and the CSPICE library. If you
   downloaded a Mice package, refer to ``mice.req'' document and to the
   Mice HTML documentation pointed to by ``doc/html/index.html'' for more
   details.
<P>
 
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy/Mice1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy/Mice
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New ``Surface Intercept'' routine SINCPT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New ``Surface Intercept'' routine SINCPT
</H3><P><BR><BR>
   Given an observer and a direction vector defining a ray, the new routine
   SINCPT (<a href="../cspice/sincpt_c.html">sincpt_c</a> in CSPICE, cspice_sincpt in Icy and Mice) computes the
   surface intercept of the ray on a target body at a specified epoch,
   optionally corrected for light time and stellar aberration. This routine
   supersedes SRFXPT (<a href="../cspice/srfxpt_c.html">srfxpt_c</a>, cspice_srfxpt), which does not have an
   input argument for the target body-fixed frame name.
<P>
 
<BR><BR>
<A NAME="New ``Illumination Angles'' routine ILUMIN"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New ``Illumination Angles'' routine ILUMIN
</H3><P><BR><BR>
   The new routine ILUMIN (<a href="../cspice/ilumin_c.html">ilumin_c</a> in CSPICE, cspice_ilumin in Icy and
   Mice) finds the illumination angles (phase, solar incidence, and
   emission) at a specified surface point of a target body. This routine
   supersedes ILLUM (<a href="../cspice/illum_c.html">illum_c</a>, cspice_illum), which doesn't have an input
   argument for the target body-fixed frame name.
<P>
 
<BR><BR>
<A NAME="New ``Sub-observer Point'' routine SUBPNT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New ``Sub-observer Point'' routine SUBPNT
</H3><P><BR><BR>
   The new routine SUBPNT (<a href="../cspice/subpnt_c.html">subpnt_c</a> in CSPICE, cspice_subpnt in Icy and
   Mice) computes the rectangular coordinates of the sub-observer point on
   a target body at a specified epoch, optionally corrected for light time
   and stellar aberration. This routine supersedes SUBPT (<a href="../cspice/subpt_c.html">subpt_c</a>,
   cspice_subpt), which does not have an input argument for the target
   body-fixed frame name.
<P>
 
<BR><BR>
<A NAME="New ``Sub-solar Point'' Routine SUBSLR"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New ``Sub-solar Point'' Routine SUBSLR
</H3><P><BR><BR>
   The new routine SUBSLR (<a href="../cspice/subslr_c.html">subslr_c</a> in CSPICE, cspice_subslr in Icy and
   Mice) computes the rectangular coordinates of the sub-solar point on a
   target body at a specified epoch, optionally corrected for light time
   and stellar aberration. This routine supersedes SUBSOL (<a href="../cspice/subsol_c.html">subsol_c</a>,
   cspice_subsol), which does not have an input argument for the target
   body-fixed frame name.
<P>
 
<BR><BR>
<A NAME="Improvements of Aberration Corrected Velocity in the SPK Subsystem"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Improvements of Aberration Corrected Velocity in the SPK Subsystem
</H3><P><BR><BR>
   NAIF has upgraded the algorithms used by the SPICE Toolkit's SPK
   subsystem to improve the accuracy of certain velocity results returned
   by that subsystem. The new algorithms improve the accuracy of velocities
   that are corrected for light time alone, or both light time and stellar
   aberration. The new algorithms use the same non-relativistic models for
   aberration corrections as do the current SPK algorithms, but the new
   implementations of the velocity calculations are more accurate.
<P>
 
   The changes improve the accuracy of certain derived quantities,
   including range rates and times of periapse or apoapse, when aberration
   corrections are used. These changes improve current SPICE computations
   as well as being necessary for implementation of the upcoming geometric
   event finding subsystem.
<P>
 
   The changes do not affect the computation of aberration-corrected
   position vectors, nor do they affect uncorrected (``geometric'') states
   (position and velocity).
<P>
 
   A few examples of the magnitudes of improvements afforded by the new
   algorithms are shown below. All velocities are inertially referenced.
<P>
 
<UL>
<TT>--</TT> Range rate of the light time corrected position of the Moon as seen from
the DSN station DSS-25: 1 cm/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Range rate of the light time and stellar aberration corrected position of
the Moon as seen from DSS-25: 13 cm/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Range rate of the light time corrected position of Mars as seen from
DSS-25: 55 cm/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Range rate of the light time and stellar aberration corrected position of
Mars as seen from DSS-25: 1.6 m/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Range rate of the light time corrected position of Cassini as seen from
DSS-25: 9 cm/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Range rate of the light time and stellar aberration corrected position of
Cassini as seen from DSS-25: 3.4 m/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Velocity of the Neptune barycenter, as seen from DSS-25, corrected for
light time: 25 cm/sec
<BR><BR></UL>
<UL>
<TT>--</TT> Velocity of the Neptune barycenter, as seen from DSS-25, corrected for
light time and stellar aberration: 400 m/sec
<BR><BR></UL>
   Negative effects of the changes are
<P>
 
<UL>
<TT>--</TT> Velocity computations using stellar aberration corrections are slower; the
extent of the effect varies considerably depending on the inputs to the
computations, but tests indicate that some common computations would be
slower by a factor of 2.
<BR><BR></UL>
   But take note: since computation of aberration-corrected states is
   usually a small fraction of the computational workload of SPICE-based
   applications, the effect on the speed of SPICE-based applications is
   very small, and in a majority of cases would likely not be discernible
   at all.
<P>
 
   Also note, the effect on speed of an application that simply ``reads''
   state vectors from an SPK file is nil since aberration corrections are
   not used for this purpose.
<P>
 
<UL>
<TT>--</TT> Using the upgraded algorithms would change outputs of some SPICE-based user
applications. In these situations, a user's regression tests could be
affected.
<BR><BR></UL>
<UL>
<TT>--</TT> If a user's application counts on the specific, current implementation of
velocity aberration corrections, a problem could occur.
<BR><BR></UL>
   NAIF believes any possible negative consequences are outweighed by the
   benefits of improved accuracy.
<P>
 
   Below we briefly describe the differences between the old and new
   aberration correction algorithms.
<P>
 
   The previous SPK light time correction algorithms introduce errors by
   ignoring the rate of change of light time with respect to time. This
   occurs in two places:
<P>
 
<UL>
<TT>--</TT> In computation of light-time corrected velocity referenced to inertial
reference frames
<BR><BR></UL>
<UL>
<TT>--</TT> In computation of light-time corrected velocity referenced to non-inertial
reference frames centered at an object other than the observer.
<BR><BR></UL>
   The new light time algorithms correct both of these errors.
<P>
 
   SPICE supports stellar aberration correction only when light time
   correction is used as well.
<P>
 
   Previously, the velocity returned when light time and stellar aberration
   corrections were used is identical to that returned when only light time
   correction is used.
<P>
 
   The new algorithm computes light time and stellar aberration-corrected
   velocity as the derivative with respect to time of light time and
   stellar aberration-corrected position.
<P>
 
<BR><BR>
<A NAME="New SPK Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New SPK Routines
</H3><P><BR><BR>
   To support improvements to the SPK subsystem described above, three new
   SPK routines were added (described below). In most cases SPICE users
   would not call one of these routines, using the high-level APIs SPKEZR
   or SPKEZ instead. For the N0062 release these routines are available
   only in SPICELIB and CSPICE.
<P>
 
<DL><DT>
<B>
 SPKACS
</B><BR><BR>
<DD>
 The new routine SPKACS (<a href="../cspice/spkacs_c.html">spkacs_c</a> in CSPICE) returns the state (position
and velocity) of a target body relative to an observer, optionally
corrected for light time and stellar aberration, expressed relative to
an inertial reference frame.<BR>
</DL>
<DL><DT>
<B>
 SPKAPS
</B><BR><BR>
<DD>
 Given the state and acceleration of an observer relative to the solar
system barycenter, the new routine SPKAPS (<a href="../cspice/spkaps_c.html">spkaps_c</a> in CSPICE) returns
the state (position and velocity) of a target body relative to the
observer, optionally corrected for light time and stellar aberration.
All input and output vectors are expressed relative to an inertial
reference frame.<BR>
</DL>
<DL><DT>
<B>
 SPKLTC
</B><BR><BR>
<DD>
 The new routine SPKLTC (<a href="../cspice/spkltc_c.html">spkltc_c</a> in CSPICE) returns the state (position
and velocity) of a target body relative to an observer, optionally
corrected for light time, expressed relative to an inertial reference
frame.<BR>
</DL>
<BR><BR>
<A NAME="New Binary PCK Coverage Routines PCKFRM and PCKCOV"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Binary PCK Coverage Routines PCKFRM and PCKCOV
</H3><P><BR><BR>
   The new PCK coverage determination routine PCKCOV (<a href="../cspice/pckcov_c.html">pckcov_c</a> in CSPICE)
   provides an API with which an application can find the time period(s)
   during which a specified binary PCK file provides data for a specified
   reference frame. The coverage information is a set of disjoint time
   intervals returned in a SPICE ``window'' data structure.
<P>
 
   The new PCK routine PCKFRM (<a href="../cspice/pckfrm_c.html">pckfrm_c</a> in CSPICE) provides an API via
   which an application can find the set of reference frames for which a
   specified binary PCK file contains data. The coverage information is
   returned in a SPICE ``set'' data structure.
<P>
 
   For the N0062 release these routines are available only in SPICELIB and
   CSPICE.
<P>
 
<BR><BR>
<A NAME="New Routine WNCARD"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Routine WNCARD
</H3><P><BR><BR>
   The new routine WNCARD (<a href="../cspice/wncard_c.html">wncard_c</a> in CSPICE, cspice_wncard in Icy)
   returns the cardinality -- number of intervals -- of a SPICE ``window''
   data structure.
<P>
 
   For the N0062 release this routine is available only in SPICELIB,
   CSPICE, and Icy.
<P>
 
<BR><BR>
<A NAME="New Routine EDTERM"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Routine EDTERM
</H3><P><BR><BR>
   The new routine EDTERM computes a set of points on the umbral or
   penumbral terminator of a specified target body, where the target shape
   is modeled as an ellipsoid.
<P>
 
   For the N0062 release this routine is available only in SPICELIB.
<P>
 
<BR><BR>
<A NAME="SCLK Buffer Size Increase"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SCLK Buffer Size Increase
</H3><P><BR><BR>
   The sizes of the internal buffers in the SCLK subsystem have been
   increased to allow SCLK kernels to include up to 9,999 partitions.
<P>
 
<BR><BR>
<A NAME="TABs in Text Kernels"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> TABs in Text Kernels
</H3><P><BR><BR>
   The low level routines called by the SPICE kernel loader routine FURNSH
   were modified to ignore TAB characters present in text kernels files on
   all supported environments.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -18   LCROSS
           -29   NEXT
           -86   CH1
           -86   CHANDRAYAAN-1
          -131   KAGUYA
          -140   EPOXI
          -151   CHANDRA
          -187   SOLAR PROBE
 
   Satellites:
 
           636   AEGIR
           637   BEBHIONN
           638   BERGELMIR
           639   BESTLA
           640   FARBAUTI
           641   FENRIR
           642   FORNJOT
           643   HATI
           644   HYROKKIN
           645   KARI
           646   LOGE
           647   SKOLL
           648   SURTUR
           649   ANTHE
           650   JARNSAXA
           651   GREIP
           652   TARQEQ
 
           809   HALIMEDE
           810   PSAMATHE
           811   SAO
           812   LAOMEDEIA
           813   NESO
 
</PRE>
   The following built-in NAIF ID code/name definitions for Jovian system
   satellites have been modified to conform to the current name/body
   mapping:
<P>
 
<PRE>
   Satellites:
 
           540   MNEME
           541   AOEDE
           542   THELXINOE
           543   ARCHE
           544   KALLICHORE
           545   HELIKE
           546   CARPO
           547   EUKELADE
           548   CYLLENE
           549   KORE
</PRE>
   The following provisional default NAIF ID code/name definitions have
   been removed:
<P>
 
<PRE>
   Spacecraft:
 
          -172   SPACETECH-3 COMBINER
          -174   PLUTO-KUIPER EXPRESS
          -175   PLUTO-KUIPER EXPRESS SIMULATION
          -205   SPACETECH-3 COLLECTOR
 
   Satellites:
 
           514   1979J2
           515   1979J1
           516   1979J3
           610   1980S1
           611   1980S3
           612   1980S6
           613   1980S13
           614   1980S25
           615   1980S28
           616   1980S27
           617   1980S26
 
           706   1986U7
           707   1986U8
           708   1986U9
           709   1986U4
           710   1986U6
           711   1986U3
           712   1986U1
           713   1986U2
           714   1986U5
           715   1985U1
           718   1986U10
 
           901   1978P1
</PRE>
   The spelling in the following built-in NAIF ID code/name definitions
   have been corrected:
<P>
 
<PRE>
   Satellites:
 
           MAGACLITE to MEGACLITE
</PRE>
   The following built-in objects have been renamed:
<P>
 
<PRE>
   Spacecraft:
 
           STV-1 to STV51
           STV-2 to STV52
           STV-3 to STV53
 
   Satellites:
 
           ERRIAPO to ERRIAPUS
</PRE>
<BR><BR>
<A NAME="Icy (IDL interface to CSPICE) Only"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Icy (IDL interface to CSPICE) Only
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New and Updated Interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New and Updated Interfaces
</H3><P><BR><BR>
   NAIF added the following interfaces to Icy for this release:
<P>
 
<PRE>
   cspice_getelm
   cspice_spkw10
   cspice_wncard
   cspice_subpnt
   cspice_subslr
   cspice_dafac
   cspice_dafdc
   cspice_dafec
   cspice_subpnt
   cspice_subslr
   cspice_sincpt
</PRE>
   These Icy interfaces now process vectorized arguments:
<P>
 
<PRE>
   cspice_etcal
   cspice_furnsh
   cspice_unload
</PRE>
   These Interfaces have been removed from Icy:
<P>
 
<PRE>
   cspice_spkw15
   cspice_spkw17
</PRE>
<BR><BR>
<A NAME="Documentation1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Permutted Index for Icy and Mice"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Permutted Index for Icy and Mice
</H3><P><BR><BR>
   The permutted index documents have been added to the ASCII and HTML
   documentation sets provided with the Icy and Mice Toolkits.
<P>
 
<BR><BR>
<A NAME="BRIEF User's Guide"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> BRIEF User's Guide
</H3><P><BR><BR>
   The BRIEF User's Guide, <a href="../ug/brief.html">brief.ug</a>, was fully rewritten to describe new
   features added to the program and to provide examples illustrating all
   aspects of the program's functionality.
<P>
 
<BR><BR>
<A NAME="Documentation on NAIF Web Server"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation on NAIF Web Server
</H3><P><BR><BR>
   The documentation provided in the generic SPICE, CSPICE, Icy and Mice
   Toolkits is now also available at this URL on the NAIF Web server:
<P>
 
<PRE>
   http://naif.jpl.nasa.gov/naif/documentation.html
</PRE>
<BR><BR>
<A NAME="BRIEF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> BRIEF
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The BRIEF utility program was modified to:
<P>
 
<UL>
<TT>--</TT> summarize binary PCK files
<BR><BR></UL>
<UL>
<TT>--</TT> summarize SPK files provided in meta-kernels
<BR><BR></UL>
<UL>
<TT>--</TT> load text kernels
<BR><BR></UL>
<UL>
<TT>--</TT> display times as calendar UTC (``-utc'' option), day-of-year UTC
(``-utcdoy'' option), and ET seconds (``-etsec'' option)
<BR><BR></UL>
<UL>
<TT>--</TT> detect attempts to summarize unsupported kernel types (CK, EK, transfer
format kernels, etc.)
<BR><BR></UL>
   The program's help and usage displays as well as the formats of the
   summary reports were improved. The internal buffers holding summary
   information were increased to allow summarizing SPK files or file sets
   containing up to 100,000 bodies.
<P>
 
<BR><BR>
<A NAME="CKBRIEF1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CKBRIEF
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The CKBRIEF utility program was modified to:
<P>
 
<UL>
<TT>--</TT> summarize CK files provided in meta-kernels
<BR><BR></UL>
<UL>
<TT>--</TT> detect attempts to summarize unsupported kernel types (SPK, binary PCK, EK,
transfer format kernels, etc.)
<BR><BR></UL>
   The program's help and usage displays were improved. The internal
   buffers holding summary information were increased to allow summarizing
   CK files containing up to 100,000 segments.
<P>
 
<BR><BR>
<A NAME="MKSPK0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> MKSPK
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The capability to accept time tags given as ET seconds past J2000 was
   added to the program. The TIME_WRAPPER setup keyword must be set to the
   special value '# ETSECONDS' to make the program recognize and process
   such time tags.
<P>
 
<BR><BR>
<A NAME="SUBPT Cookbook"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SUBPT Cookbook
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The cookbook program SUBPT was updated to illustrate use of the new
   ``sub-observer point'' routine SUBPNT.
<P>
 
<BR><BR>
<A NAME="Bug Fixes1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="EV2LIN"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EV2LIN
</H3><P><BR><BR>
   Corrected error in the calculation of the C4 term due to typographic
   error in expression.
<P>
 
<BR><BR>
<A NAME="HYPTOF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> HYPTOF
</H3><P><BR><BR>
   An error in the HYPTOF routine affecting cases of evaluating elements of
   a hyperbolic trajectory with a very large eccentricity with respect to a
   small body (low gravity) has been fixed.
<P>
 
<BR><BR>
<A NAME="INELPL"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> INELPL
</H3><P><BR><BR>
   The routine's specification and behavior have been updated so the
   routine now returns a meaningful result for the case of an ellipse
   consisting of a single point.
<P>
 
   Also, in the degenerate case where the input ellipse is a line segment
   of positive length, and this segment intersects the plane, the number of
   intersection points is set to 1 rather than 2.
<P>
 
<BR><BR>
<A NAME="RAXISA"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> RAXISA
</H3><P><BR><BR>
   Minor edit to the ANGLE declaration strictly identifying the constant as
   a double. This change eliminates an occasional compiler warning.
<P>
 
<BR><BR>
<A NAME="SC01"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SC01
</H3><P><BR><BR>
   The routine was fixed to correctly insert spaces between fields when the
   output field delimiter is blank.
<P>
 
<BR><BR>
<A NAME="SRFXPT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SRFXPT
</H3><P><BR><BR>
   The routine was corrected to no longer apply the light time improvement
   logic in near-miss cases when a geometric solution is requested via
   ABCORR.
<P>
 
<BR><BR>
<A NAME="BRIEF0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> BRIEF
</H3><P><BR><BR>
   A number of bugs were fixed in the BRIEF utility program in the course
   of the modifications described above. The two most significant of these
   bugs were hanging up when no value was provided after ``-from'',
   ``-to'',``-at'', and ``-f'' options, and a logic expression error
   causing the program's crash on the Intel FORTRAN environments.
<P>
 
<BR><BR>
<A NAME="CKBRIEF2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF
</H3><P><BR><BR>
   The bug causing an unsolicited grouping display on some C environments
   was fixed.
<P>
 
<BR><BR>
<A NAME="Header Updates"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Header Updates
</H3><P><BR><BR>
   A number of formatting problems, typos, and errors in examples were
   fixed in the SPICE, CSPICE, and Icy headers.
<P>
 
<BR><BR>
<A NAME="Version 61 --- December 2006"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 61 --- December 2006
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Rules Regarding Use of SPICE Components"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Rules Regarding Use of SPICE Components
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The rules regarding use of SPICE components have been updated to reflect
   the new ITAR clearance for the SPICE toolkit, documentation and data.
   Please see the RULES page of the NAIF website:
   http://naif.jpl.nasa.gov/naif/rules.html for details.
<P>
 
<BR><BR>
<A NAME="Environments2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Environments2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Environments
</H3><P><BR><BR>
   The SPICE Toolkit is now officially supported on these new environments:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          Intel FORTRAN
      PC           Windows       Intel FORTRAN
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C
      Sun          Solaris       gCC/64bit
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 6.3
</PRE>
<BR><BR>
<A NAME="Deprecated Environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Deprecated Environments
</H3><P><BR><BR>
   The SPICE Toolkit is no longer supported on these environments:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      HP           UX-10         HP FORTRAN
      Vax          VMS           Digital FORTRAN
 
   CSPICE:
 
      HP           UX-10         HP C
 
</PRE>
<BR><BR>
<A NAME="Complete List of Supported Environments2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Complete List of Supported Environments
</H3><P><BR><BR>
   This is the complete list of environments on which the N0061 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      Mac/Intel    OS-X          Intel FORTRAN
      Mac/PowerPC  OS-X          Absoft FORTRAN
      Mac/PowerPC  OS-X          g77
      PC           CYGWIN        g77
      PC           Linux         g77
      PC           Windows       Compaq Visual (Digital) FORTRAN
      PC           Windows       Intel FORTRAN
      PC           Windows       Lahey FORTRAN 95
      Sun          Solaris       SUN FORTRAN
 
   CSPICE:
 
      Mac/Intel    OS-X          Apple C
      Mac/PowerPC  OS-X          Apple C
      PC           CYGWIN        gCC
      PC           Linux         gCC
      PC           Linux         gCC/64bit
      PC           Windows       Microsoft Visual C
      Sun          Solaris       gCC
      Sun          Solaris       gCC/64bit
      Sun          Solaris       SUN C
 
   Icy:
 
      Mac/Intel    OS-X          Apple C / IDL 6.3
      Mac/PowerPC  OS-X          Apple C / IDL 6.3
      PC           Linux         gCC / IDL 6.3
      PC           Windows       Microsoft Visual C / IDL 6.3
      Sun          Solaris       gCC / IDL 6.3
      Sun          Solaris       SUN C / IDL 6.3
</PRE>
<BR><BR>
<A NAME="Use of -fPIC/-KPIC Option"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Use of -fPIC/-KPIC Option
</H3><P><BR><BR>
   The CSPICE library provided with the CSPICE and Icy toolkits is now
   compiled with the -fPIC or -KPIC option resulting in
   position-independent code, suitable for dynamic linking all environments
   that support it.
<P>
 
<BR><BR>
<A NAME="Lahey Memory Issue Related to File Opening/Closing2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Lahey Memory Issue Related to File Opening/Closing
</H3><P><BR><BR>
   Users of Lahey FORTRAN under the Windows operating systems should be
   aware that the F95 compiler allocates a small amount of memory, in
   connection with the process of using file OPEN and INQUIRE statements,
   that it might not free at the end of the file manipulation process.
   Since the simple opening of a binary kernel file can involve multiple
   OPEN and INQUIRE statements, the result of this allocation is that if
   the user were to open many (e.g. 100 or more) kernel files, an
   application program could sequester memory that would not be freed as
   expected. A virtual memory error message such as "A work area cannot be
   reserved because of insufficient area" may result from this situation.
   This can adversely affect the stability of the Windows operating system,
   even after the user program is terminated.
<P>
 
   We believe that this behavior affects all versions of SPICELIB,
   including the N61 version. We are working with Lahey to resolve this
   issue.
<P>
 
<BR><BR>
<A NAME="Scratch EK File Issue in Icy on PC/Windows2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Scratch EK File Issue in Icy on PC/Windows
</H3><P><BR><BR>
   An issue may exist when using EK scratch files from IDL under Microsoft
   Windows. The cspice_ekcls call may fail to delete the scratch file
   created by the cspice_ekops call. This file normally has a name style
   similar to tmp.Fxxxxx. You can manually delete the file only after you
   close the IDL application.
<P>
 
   This problem does not affect use of the file or cause any known
   instability to Icy.
<P>
 
<BR><BR>
<A NAME="Documentation2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   Starting with N0061 every SPICE toolkit package comes with a complete
   set of HTML documentation consisting of:
<P>
 
<UL>
<TT>--</TT> brief introduction to the SPICE system
<BR><BR></UL>
<UL>
<TT>--</TT> overview of specifics of SPICE implementation for a given language (for
CSPICE and Icy only)
<BR><BR></UL>
<UL>
<TT>--</TT> description of the Toolkit package layout and contents
<BR><BR></UL>
<UL>
<TT>--</TT> language specific summary of Most Used SPICE APIs by category
<BR><BR></UL>
<UL>
<TT>--</TT> complete reference guide for all public APIs, derived from the source
headers and provided with an alphabetical index
<BR><BR></UL>
<UL>
<TT>--</TT> Permuted Index of all public APIs
<BR><BR></UL>
<UL>
<TT>--</TT> complete set of Required Reading documents, provided with an index
<BR><BR></UL>
<UL>
<TT>--</TT> complete set of User's Guide documents, provided with an index
<BR><BR></UL>
   All HTML documents in this set are cross-hyperlinked -- every instance
   of an API name in Required Reading, index or other documents is linked
   to the API HTML page derived from its source code header; every
   reference to a Required Reading document in the API HTML pages, indexes
   and other documents is linked to the Required Reading's HTML page, and
   so on. In some cases HTML pages are also linked to the actual source
   code modules, specifically from the Permuted Index document and from the
   bottom of each of the each individual API pages.
<P>
 
   The top level index file
<P>
 
<PRE>
   doc/html/index.html
</PRE>
   provides a single entry point to all HTML documentation.
<P>
 
   While the CSPICE and Icy set of individual API HTML pages contains a
   page for each of the public routines, the SPICELIB (Fortran) set does
   not provide HTML pages for about 30 routines that are different on
   different environments. NAIF omitted them in this Toolkit version due to
   some technical difficulties in assembling the Toolkit packages and will
   try to fix this situation in the next release of the Toolkit.
<P>
 
   Also, the SPICELIB HTML documentation set does not include links to a
   small set of APIs that have names that are either common words (POS,
   FRAME, ROTATE, RETURN) or terms (J2000, B1950) commonly used in the
   SPICE documentation.
<P>
 
<BR><BR>
<A NAME="New Applications"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> New Applications
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="MSOPCK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MSOPCK
</H3><P><BR><BR>
   The MSOPCK program was added to the application set included in each
   SPICE toolkit. This program converts attitude data provided in a text
   file as UTC, SCLK, or ET-tagged quaternions, Euler angles, or matrices,
   optionally accompanied by angular velocities, into a type 1, 2, or 3
   SPICE C-kernel.
<P>
 
   Refer to the MSOPCK User's Guide, <a href="../ug/msopck.html">msopck.ug</a>, for more information about
   the program.
<P>
 
   Note: an earlier version of this program has been available in some
   mission-specific Toolkits and through the NAIF website. We recommend
   users replace that older version with this one.
<P>
 
<BR><BR>
<A NAME="SPKDIFF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPKDIFF
</H3><P><BR><BR>
   The SPKDIFF program was added to the application set included in each
   SPICE toolkit. This program computes differences between geometric
   states obtained from two SPK files and either displays these differences
   or shows statistics about them.
<P>
 
   Refer to the SPKDIFF User's Guide, <a href="../ug/spkdiff.html">spkdiff.ug</a>, for more information
   about the program.
<P>
 
   Note: SPPKDIFF replaces a predecessor program named CMPSPK that had
   limited distribution.
<P>
 
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="KCLEAR Routine"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> KCLEAR Routine
</H3><P><BR><BR>
   A call to KCLEAR unloads all files loaded via FURNSH and clears the
   kernel pool.
<P>
 
   Calling KCLEAR at the end of an Icy-based IDL script ensures that
   kernels loaded during script execution won't contaminate results from
   Icy-based scripts run subsequently during the same IDL session.
<P>
 
<BR><BR>
<A NAME="DAF Comment Area Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DAF Comment Area Routines
</H3><P><BR><BR>
   The former support library routines DAFAC, DAFDC, and DAFEC have been
   moved into SPICELIB. These routines provide comment area access for
   DAF-based files, such as SPK, CK, and binary PCK files. DAFAC appends to
   the contents of a DAF's comment area text provided in a buffer. DAFDC
   deletes all comments from the comment area. DAFEC extracts the contents
   of the comment area into a buffer.
<P>
 
   These routines are available in SPICELIB and CSPICE; they are not yet
   supported in Icy.
<P>
 
<BR><BR>
<A NAME="DAF-based Kernel Open Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DAF-based Kernel Open Routines
</H3><P><BR><BR>
   The routines CKOPN, PCKOPN, and SPKOPN, which open new CK, binary PCK
   and SPK kernels respectively, now are able to reserve a caller-specified
   amount of space in the new file's comment area at the time of file
   creation. This allows faster comment addition when comments must be
   added after the kernel contains a large amount of data, since the data
   need not be shifted to make room in the comment area.
<P>
 
   The calling sequences of these routines have not changed. The routines'
   input argument NCOMCH was previously disregarded; it now specifies the
   amount of comment area space to reserve.
<P>
 
   This change applies to SPICELIB, CSPICE, and Icy.
<P>
 
<BR><BR>
<A NAME="DAFONW Routine"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DAFONW Routine
</H3><P><BR><BR>
   The routine DAFONW, which opens a new DAF, now initializes the DAF
   comment area when comment area records are reserved. The comment records
   are null-padded as before, but now the first character of the comment
   area is initialized with the ``end-of-comments'' character. This
   provides a correctly initialized empty comment area that can be accessed
   by SPICE routines and utilities. Formerly this initialization had to be
   carried out by the calling program.
<P>
 
   This change supports the capability of reserving space in the comment
   area now provided by the higher-level kernel opening routines CKOPN,
   PCKOPN, and SPKOPN.
<P>
 
<BR><BR>
<A NAME="SPKW02, SPKW03, and SPKW05 Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPKW02, SPKW03, and SPKW05 Routines
</H3><P><BR><BR>
   The restriction that the input reference frame should be inertial has
   been removed from SPK Type 2, 3 and 5 writer routines SPKW02, SPKW03 and
   SPKW05. Any application that calls there routines, including the MKSPK
   program, can now create a type 2, 3, or 5 SPK file with data given with
   respect to a non-inertial frame.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -61   JUNO
           -76   MSL
           -76   MARS SCIENCE LABORATORY
           -85   LRO
           -85   LUNAR RECON ORBITER
           -85   LUNAR RECONNAISSANCE ORBITER
          -212   STV-1
          -213   STV-2
          -214   STV-3
 
   Satellites:
 
           540   ARCHE
           541   EUKELADE
           546   HELIKE
           547   AOEDE
           548   HEGEMONE
           551   KALLICHORE
           553   CYLLENE
           560   CARPO
           561   MNEME
 
           635   DAPHNIS
 
           722   FRANCISCO
           723   MARGARET
           724   FERDINAND
           725   PERDITA
           726   MAB
           727   CUPID
 
           902   NIX
           903   HYDRA
</PRE>
   The following provisional name/ID mappings for the Jovian system
   satellites were replaced or removed from the Toolkit:
<P>
 
<PRE>
    539         'HEGEMONE'              JXXXIX
    540         'MNEME'                 JXL
    541         'AOEDE'                 JXLI
    542         'THELXINOE'             JXLII
    543         'ARCHE'                 JXLIII
    544         'KALLICHORE'            JXLIV
    545         'HELIKE'                JXLV
    546         'CARPO'                 JXLVI
    547         'EUKELADE'              JXLVII
    548         'CYLLENE'               JXLVIII
</PRE>
   The new mapping leaves the IDs 539, 542-545, 549, 550, 552, 554-559
   unassigned.
<P>
 
   The following name spelling correction has also been made:
<P>
 
<PRE>
           632   METHODE to METHONE
</PRE>
<BR><BR>
<A NAME="CSPICE Only"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE Only
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Wrappers"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Wrappers
</H3><P><BR><BR>
   The following interfaces to SPICE routines were added to CSPICE in this
   release:
<P>
 
<PRE>
   <a href="../cspice/dafac_c.html">dafac_c</a>        <a href="../cspice/dafdc_c.html">dafdc_c</a>         <a href="../cspice/dafec_c.html">dafec_c</a>
   <a href="../cspice/dafgda_c.html">dafgda_c</a>       <a href="../cspice/dascls_c.html">dascls_c</a>        <a href="../cspice/dasopr_c.html">dasopr_c</a>
   <a href="../cspice/kclear_c.html">kclear_c</a>
</PRE>
<BR><BR>
<A NAME="Icy (IDL interface to CSPICE) Only"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Icy (IDL interface to CSPICE) Only
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Interfaces0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Interfaces
</H3><P><BR><BR>
   NAIF added the following new Icy interfaces for this release:
<P>
 
<PRE>
   cspice_appndd  cspice_appndi   cspice_badkpv
   cspice_dafgda  cspice_dascls   cspice_dasopr
   cspice_inter   cspice_kclear   cspice_valid
</PRE>
<BR><BR>
<A NAME="Bug Fixes2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="CKE05"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKE05
</H3><P><BR><BR>
   Several functional changes were made to the CK type 5 evaluator CKE05.
   These changes affect all CK type 5 subtypes EXCEPT subtype 1, which is
   used by the Mars Express, Rosetta, Venus Express, and SMART-1 missions.
   These changes are not expected to affect current SPICE users.
<P>
 
   First change: the evaluator now assumes that input rate information,
   whether in the form of quaternion derivatives or angular velocity
   vectors, has units of radians/second. This makes the routine's interface
   consistent with SPICE conventions. This change affects subtypes 0, 2,
   and 3.
<P>
 
   Second change: the evaluator no longer attempts to improve interpolation
   of quaternion derivatives by negating, if necessary, the derivatives
   provided in the input record. This places on C-kernel creators the
   burden of determining correct quaternion derivatives suitable for
   Hermite interpolation. This decision was made because the selection
   functionality cannot be implemented in a completely reliable way for the
   case where the derivatives have very small magnitude (which in practice
   is not a rare case). Quaternions themselves still WILL be negated if
   necessary for correct Hermite interpolation. This change affects
   subtypes 0 and 2.
<P>
 
<BR><BR>
<A NAME="ET2LST"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ET2LST
</H3><P><BR><BR>
   The bug for bodies with retrograde rotation causing the local time to
   flow backwards has been fixed. The local time for all types of bodies
   now progresses as expected -- midnight, increasing AM hours, noon,
   increasing PM hours, next midnight, and so on.
<P>
 
<BR><BR>
<A NAME="UNLOAD"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> UNLOAD
</H3><P><BR><BR>
   The bug causing incorrect meta-kernel unloading was fixed. Formerly some
   sequences of FURNSH and UNLOAD calls could cause UNLOAD to become unable
   to unload meta-kernels correctly: in some cases, kernels referenced by
   the meta-kernels were not unloaded when they should have been.
<P>
 
<BR><BR>
<A NAME="STR2ET"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> STR2ET
</H3><P><BR><BR>
   Two bugs were fixed. The first bug caused the routine to return
   incorrect results in some cases on calls following calls for which a
   time zone was specified. The second bug caused the routine to generate a
   memory violation exception for blank input strings on some environments
   (HP).
<P>
 
<BR><BR>
<A NAME="SURFPT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SURFPT
</H3><P><BR><BR>
   The ray's surface intercept is now always set to the ray's vertex when
   the vertex is on the ellipsoid's surface. Formerly, for inward-pointing
   direction vectors, the ray's point of egress from the ellipsoid was
   selected as the intercept.
<P>
 
   The new functionality is consistent with the routine's documentation,
   which claims that the intercept closest to the ray's vertex is selected.
<P>
 
<BR><BR>
<A NAME="CHRONOS"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CHRONOS
</H3><P><BR><BR>
   Two bugs were fixed. The first bug caused slightly incorrect computation
   of the mean local second duration, which could have resulted in a leap
   in the LST SOL counting. For landed Martian missions this bug would have
   exhibited itself after approximately SOL 2100. The second bug prohibited
   conversion from and to LST for local times a few seconds before
   midnight, in the 23:59:00-23:59:59 range.
<P>
 
   The important side effect of correcting the first bug is that due to the
   fact that LST is returned with integer local seconds the result of any
   conversion from and to LST differs slightly -- by less that 1 second --
   from the same conversion done by the previous versions of the program.
<P>
 
<BR><BR>
<A NAME="Icy"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Icy
</H3><P><BR><BR>
   The bug causing a cascade of 'zzerror_c' strings prefixed to error
   strings has been fixed.
<P>
 
<BR><BR>
<A NAME="MKSPK1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MKSPK
</H3><P><BR><BR>
   The bug causing the 8th input equinoctial element (DMPN/DT) to be
   assigned to the 8th (DMPN/DT) and 9th (DNOD/DT) equinoctial elements
   stored in the output SPK file when the first six equinoctial elements
   were derived from input states or classical elements was fixed.
<P>
 
<BR><BR>
<A NAME="Version 60 --- December 2005"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 60 --- December 2005
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   The sole purpose of this version is to fix the bug described below. In
   all other aspects the N0060 Toolkit is the same as the N0059 Toolkit.
<P>
 
<BR><BR>
<A NAME="Bug Fixes3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Access to High Precision Binary Earth PCK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Access to High Precision Binary Earth PCK
</H3><P><BR><BR>
   On December 13, 2005, a significant bug was found in the Fortran, C, and
   IDL N0059 SPICE Toolkits: this bug results in corruption of data read
   from high precision binary earth PCK files.
<P>
 
   A second, probably rarely encountered, effect of the bug is that data
   will be corrupted when read directly from routine TISBOD (<a href="../cspice/tisbod_c.html">tisbod_c</a> in
   CSPICE, cspice_tisbod in Icy), in cases where the input reference frame
   name doesn't match the frame associated with the data in the source PCK.
<P>
 
   This bug has been fixed in the N0060 Toolkit.
<P>
 
<BR><BR>
<A NAME="Version 59 --- November 2005"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 59 --- November 2005
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Rules Regarding Use of SPICE Components0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Rules Regarding Use of SPICE Components
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The rules regarding use of SPICE components, already very minimal, have
   been further relaxed and better articulated. Please see the RULES page
   of the NAIF website: http://naif.jpl.nasa.gov/naif/rules.html for
   details.
<P>
 
<BR><BR>
<A NAME="Environments3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Environments3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Environments
</H3><P><BR><BR>
   The SPICE Toolkit is now officially supported on Sun/Solaris/64bit gcc
   environment.
<P>
 
<BR><BR>
<A NAME="Supported Environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Supported Environments
</H3><P><BR><BR>
   This is the complete list of environments on which the N0059 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      HP         UX-10         HP FORTRAN
      Macintosh  OS-X          Absoft FORTRAN
      Macintosh  OS-X          g77
      PC         CYGWIN        g77
      PC         Linux         g77
      PC         Windows       Compaq Visual (Digital) FORTRAN
      PC         Windows       Lahey FORTRAN 95
      Sun        Solaris       SUN FORTRAN
      Vax        VMS           Digital FORTRAN
 
   CSPICE:
 
      HP         UX            HP C
      Macintosh  OS-X          Apple C
      PC         CYGWIN        gCC
      PC         Linux         gCC
      PC         Windows       Microsoft Visual C
      Sun        Solaris       SUN C
      Sun        Solaris       gCC
      Sun        Solaris       gCC/64bit
 
   Icy:
 
      Macintosh  OS-X          Apple C / IDL 6.2
      PC         Linux         gCC / IDL 6.2
      PC         Windows       Microsoft Visual C / IDL 6.2
      Sun        Solaris       SUN C / IDL 6.2
      Sun        Solaris       gCC / IDL 6.2
</PRE>
<BR><BR>
<A NAME="Optimization for C/Icy environments"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Optimization for C/Icy environments
</H3><P><BR><BR>
   Optimization -O2 or equivalent is now used to compile CSPICE for all
   supported C and Icy environments.
<P>
 
<BR><BR>
<A NAME="Lahey Memory Issue Related to File Opening/Closing3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Lahey Memory Issue Related to File Opening/Closing
</H3><P><BR><BR>
   Users of Lahey FORTRAN under the Windows operating systems should be
   aware that the F95 compiler allocates a small amount of memory, in
   connection with the process of using file OPEN and INQUIRE statements,
   that it might not free at the end of the file manipulation process.
   Since the simple opening of a binary kernel file can involve multiple
   OPEN and INQUIRE statements, the result of this allocation is that if
   the user were to open many (e.g. 100 or more) kernel files, an
   application program could sequester memory that would not be freed as
   expected. A virtual memory error message such as "A work area cannot be
   reserved because of insufficient area" may result from this situation.
   This can adversely affect the stability of the Windows operating system,
   even after the user program is terminated.
<P>
 
   We believe that this behavior affects all versions of SPICELIB,
   including the soon to be released N59 version. We are working with Lahey
   to resolve this issue.
<P>
 
<BR><BR>
<A NAME="Scratch EK File Issue in Icy on PC/Windows3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Scratch EK File Issue in Icy on PC/Windows
</H3><P><BR><BR>
   An issue may exist when using EK scratch files from IDL under Microsoft
   Windows. The cspice_ekcls call may fail to delete the scratch file
   created by the cspice_ekops call. This file normally has a name style
   similar to tmp.Fxxxxx. You can manually delete the file only after you
   close the IDL application.
<P>
 
   This problem does not affect use of the file or cause any known
   instability to Icy.
<P>
 
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Loading of Non-Native Text Kernels Files"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Loading of Non-Native Text Kernels Files
</H3><P><BR><BR>
   Starting with this version of the toolkit, the CSPICE and Icy text
   kernel loaders, <a href="../cspice/furnsh_c.html">furnsh_c</a>/cspice_furnsh and <a href="../cspice/ldpool_c.html">ldpool_c</a>/cspice_ldpool, can
   read and parse non-native text files. Unfortunately this capability
   cannot be provided in FORTRAN instances of the Toolkit.
<P>
 
   Please be aware the CSPICE text file reader, <a href="../cspice/rdtext_c.html">rdtext_c</a>, does not possess
   the capability to read non-native text files.
<P>
 
<BR><BR>
<A NAME="Additional Testing"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Additional Testing
</H3><P><BR><BR>
   A large amount of additional testing of existing SPICE interfaces and
   capabilities was performed during preparation of this version of the
   toolkit. This testing uncovered a small number of bugs, all of which
   have been fixed for this release (see Section ``Bug Fixes'' below.)
<P>
 
<BR><BR>
<A NAME="Deprecation of BODVAR in favor of BODVRD and BODVCD"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Deprecation of BODVAR in favor of BODVRD and BODVCD
</H3><P><BR><BR>
   Routine BODVAR has been deprecated due to deficiency of its interface
   and a possibility that it may cause memory violation when used to
   retrieve data for incorrectly formed text kernel keywords. Routines
   BODVCD and BODVRD should be used instead of it.
<P>
 
<BR><BR>
<A NAME="``In Place'' Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ``In Place'' Routines
</H3><P><BR><BR>
   A number of routines parallel to existing interfaces but utilizing the
   same argument for both input and output were added to SPICELIB (FORTRAN
   Toolkit). These routines are:
<P>
 
<PRE>
   cyacip.for
   cyadip.for
   cyaiip.for
   vhatip.for
   vsclip.for
   xpsgip.for
</PRE>
<BR><BR>
<A NAME="SPK Segment Buffer Increase"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK Segment Buffer Increase
</H3><P><BR><BR>
   The SPK segment buffer size was increased to 30,000 to allow more
   efficient read access to SPK files containing a large number of
   segments, such as SPK files produced by ESA's Mars Express project.
<P>
 
<BR><BR>
<A NAME="EK Buffer Increased"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EK Buffer Increased
</H3><P><BR><BR>
   Buffers facilitating EK access have been increased to provide more
   efficient read access to EK files containing a large numbers of records,
   such as EK files produced by the Cassini project.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -98   NEW HORIZONS
          -248   VENUS EXPRESS, VEX
          -500   RSAT, SELENE Relay Satellite, SELENE Rstar, Rstar
          -502   VSAT, SELENE VLBI Radio Satellite,
                 SELENE VRAD Satellite, SELENE Vstar
 
   Asteroids:
 
       2025143   ITOKAWA
 
   Satellites:
 
           539   HEGEMONE
           540   MNEME
           541   AOEDE
           542   THELXINOE
           543   ARCHE
           544   KALLICHORE
           545   HELIKE
           546   CARPO
           547   EUKELADE
           548   CYLLENE
           631   NARVI
           632   METHODE
           633   PALLENE
           634   POLYDEUCES
 
   Ground Stations:
 
        399064   DSS-64
</PRE>
<BR><BR>
<A NAME="Documentation3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   The PCK Required Reading document has been revised.
<P>
 
<BR><BR>
<A NAME="CSPICE"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Wrappers0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Wrappers
</H3><P><BR><BR>
   The following interfaces to SPICE routines were added to CSPICE in this
   release:
<P>
 
<PRE>
   <a href="../cspice/bodvcd_c.html">bodvcd_c</a>.c
   <a href="../cspice/qdq2av_c.html">qdq2av_c</a>.c
   <a href="../cspice/qxq_c.html">qxq_c</a>.c
   <a href="../cspice/srfrec_c.html">srfrec_c</a>.c
</PRE>
<BR><BR>
<A NAME="Icy (Interactive Data Language interface to CSPICE)"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Icy (Interactive Data Language interface to CSPICE)
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Vectorization"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Vectorization
</H3><P><BR><BR>
   NAIF modified the function of several Icy routines to support vectorized
   variables (in the IDL sense) as input and output.
<P>
 
<PRE>
   cspice_illum    cspice_insrtd   cspice_insrti   cspice_oscelt
   cspice_sce2c    cspice_srfrec   cspice_srfxpt   cspice_subpt
   cspice_removd   cspice_removi
</PRE>
<BR><BR>
<A NAME="New interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New interfaces
</H3><P><BR><BR>
   NAIF added the following new Icy interfaces for this release:
<P>
 
<PRE>
   cspice_bodvcd   cspice_diff     cspice_insrtd   cspice_insrti
   cspice_qdq2av   cspice_qxq      cspice_removd   cspice_removi
   cspice_sdiff    cspice_set      cspice_srfrec   cspice_union
</PRE>
<BR><BR>
<A NAME="Bug Fixes4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Non-standard Use of Duplicate Arguments in FORTRAN"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Non-standard Use of Duplicate Arguments in FORTRAN
</H3><P><BR><BR>
   A large number of SPICELIB routines has been revised to eliminate
   non-standard use of duplicate arguments in calls to other routines.
   Though this use did not pose any problems or cause any errors in the
   earlier Toolkit versions, it prevented use of optimization on some
   environments. With these changes optimization is now used in building
   all CSPICE and Icy Toolkits.
<P>
 
<BR><BR>
<A NAME="NEARPT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> NEARPT
</H3><P><BR><BR>
   A bug related to the scale of transverse component of error vector was
   corrected for the exterior point case.
<P>
 
<BR><BR>
<A NAME="ET2LST0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ET2LST
</H3><P><BR><BR>
   The treatment of planetographic longitude has been updated to be
   consistent with the SPICE planetographic / rectangular coordinate
   conversion routines. The effect of this change is that the default sense
   of positive longitude for the moon is now east; also, the default sense
   of positive planetographic longitude now may be overridden for any body.
<P>
 
<BR><BR>
<A NAME="GETFOV0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> GETFOV
</H3><P><BR><BR>
   A bug causing incorrect computation of the boundary vectors for a
   rectangular FOV specified using the angular extents method has been
   fixed. In the previous versions for cases when the reference vector was
   provided as a non-unit vector and/or was non-perpendicular to the
   specified boresight the boundary vectors returned by the routine were
   computed incorrectly.
<P>
 
<BR><BR>
<A NAME="CKW03"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKW03
</H3><P><BR><BR>
   A check verifying that the start time of the first interval is the same
   as the time of the first pointing instance has been added.
<P>
 
<BR><BR>
<A NAME="INEDPL"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> INEDPL
</H3><P><BR><BR>
   Error detection for the case of invalid input plane was added.
<P>
 
<BR><BR>
<A NAME="INSRTC"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> INSRTC
</H3><P><BR><BR>
   The routine was changed in such way that when the item to be inserted
   would, after truncation to the set's string length, match an item
   already in the set, no insertion is performed. Previously the truncated
   string was inserted, corrupting the set.
<P>
 
<BR><BR>
<A NAME="String Parsing Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> String Parsing Routines
</H3><P><BR><BR>
   Routines lparse.for, lparsm.for, and lparss.for were modified to avoid
   out-of-range substring bounds conditions.
<P>
 
<BR><BR>
<A NAME="Version 58 --- January 2005"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 58 --- January 2005
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The SPICE Toolkit is now officially supported on PC/CYGWIN/g77 and
   PC/CYGWIN/gCC environments and no longer supported on SGI and DEC Alpha
   computers.
<P>
 
   This is the complete list of environments on which the N0058 version of
   the SPICE Toolkit is supported:
<P>
 
<PRE>
   FORTRAN Toolkit:
 
      HP         UX            HP FORTRAN
      Macintosh  OS-X          Absoft FORTRAN
      Macintosh  OS-X          g77
      PC         CYGWIN        g77
      PC         Linux         g77
      PC         Windows       Compaq Visual (Digital) FORTRAN
      PC         Windows       Lahey FORTRAN 95
      Sun        Solaris       SUN FORTRAN
      Vax        VMS           Digital FORTRAN
 
   CSPICE:
 
      HP         UX            HP C
      Macintosh  OS-X          Apple C
      PC         CYGWIN        gCC
      PC         Linux         gCC
      PC         Windows       Microsoft Visual C
      Sun        Solaris       SUN C
      Sun        Solaris       gCC
 
   Icy:
 
      Macintosh  OS-X          Apple C / IDL 6.1
      PC         Linux         gCC / IDL 6.1
      PC         Windows       Microsoft Visual C / IDL 6.1
      Sun        Solaris       SUN C / IDL 6.1
      Sun        Solaris       gCC / IDL 6.1
</PRE>
<BR><BR>
<A NAME="SPICELIB/CSPICE/Icy1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE/Icy
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Parameterized Dynamic Frames"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Parameterized Dynamic Frames
</H3><P><BR><BR>
   The SPICE frame system now supports parameterized dynamic frames: frames
   for which orientation is based on dynamic directions computed using
   SPICE kernel data (SPKs, CK, PCKs), on mathematical models implemented
   in SPICE routines, or on formulas defined in frame kernels.
   Parameterized dynamic frames are grouped into ``families'' according to
   the method by which they're defined.
<P>
 
   Currently supported dynamic frame families are:
<P>
 
<UL>
<TT>--</TT> Two-vector frames: these are defined by pairs of vectors. The vectors may
be position vectors, velocity vectors, observer-target near point vectors,
or constant vectors.
<BR><BR></UL>
<UL>
<TT>--</TT> Mean equator and equinox of date frames.
<BR><BR></UL>
<UL>
<TT>--</TT> True equator and equinox of date frames.
<BR><BR></UL>
<UL>
<TT>--</TT> Mean ecliptic and equinox of date frames.
<BR><BR></UL>
<UL>
<TT>--</TT> Euler frames: these are defined by angles specified as polynomial functions
of time.
<BR><BR></UL>
   Currently ``of date'' frames are supported only for the earth.
<P>
 
   The Frames Required Reading documents the new capability and contains
   numerous examples of dynamic frame kernel definitions.
<P>
 
<BR><BR>
<A NAME="CK/SPK Coverage Summary Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK/SPK Coverage Summary Routines
</H3><P><BR><BR>
   The new CK and SPK coverage determination routines CKCOV and SPKCOV
   provide an API via which an application can find the time periods for
   which a specified CK or SPK file provides data for, respectively, an
   instrument or body of interest. The coverage information is a set of
   disjoint time intervals returned in a SPICE ``window'' data structure.
<P>
 
   The new CK and SPK routines CKOBJ and SPKOBJ provide an API via which an
   application can find the set of instruments or bodies for which,
   respectively, a specified CK or SPK file contains data. The coverage
   information is returned in a SPICE ``set'' data structure.
<P>
 
   These new APIs are supported by SPICELIB, CSPICE, and Icy.
<P>
 
<BR><BR>
<A NAME="Planetographic Coordinate Conversion Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Planetographic Coordinate Conversion Routines
</H3><P><BR><BR>
   The new planetographic coordinate conversion routines RECPGR and PGRREC
   support conversion between rectangular and planetographic coordinates.
   The planetographic Jacobian matrix routines DRDPGR and DPGRDR provide
   the derivative matrices for these transformations (used for coordinate
   transformations of velocities).
<P>
 
   These new APIs are supported by SPICELIB, CSPICE, and Icy.
<P>
 
<BR><BR>
<A NAME="``L-sub-S'' Solar Longitude Routine"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ``L-sub-S'' Solar Longitude Routine
</H3><P><BR><BR>
   The new routine LSPCN computes the planetocentric longitude of the sun
   (often called ``L-sub-S'' or ``Ls'') for a specified body and time. This
   quantity is typically used as an approximate ``time of year'' indicator.
<P>
 
   The new API is supported by SPICELIB, CSPICE, and Icy.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -84         PHOENIX
          -130         HAYABUSA
          -131         SELENE
          -203         DAWN
          -238         SMART-1, S1, SM1, SMART1
          -486         HERSCHEL
          -489         PLANCK
 
   Comets:
 
       1000012         CHURYUMOV-GERASIMENKO
                       67P/CHURYUMOV-GERASIMENKO (1969 R1)
 
   Stations:
 
        399049         DSS-49
        399055         DSS-55
        398989         NOTO
</PRE>
<BR><BR>
<A NAME="Documentation4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   <a href="../req/frames.html">FRAMES.REQ</a> has been re-structured and augmented with an extensive
   description and examples of the new parameterized dynamic frames family.
<P>
 
<BR><BR>
<A NAME="CSPICE0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New Wrappers1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New Wrappers
</H3><P><BR><BR>
   The following new miscellaneous interfaces to SPICE routines were added
   to CSPICE in this release:
<P>
 
<PRE>
   <a href="../cspice/bods2c_c.html">bods2c_c</a>.c      <a href="../cspice/dafopw_c.html">dafopw_c</a>.c      <a href="../cspice/dafps_c.html">dafps_c</a>.c       <a href="../cspice/dafrs_c.html">dafrs_c</a>.c
</PRE>
<BR><BR>
<A NAME="Icy (Interactive Data Language interface to CSPICE)"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Icy (Interactive Data Language interface to CSPICE)
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Vectorization0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Vectorization
</H3><P><BR><BR>
   NAIF modified the function of several Icy routines to support vectorized
   variables (in the IDL sense) as input and output.
<P>
 
<PRE>
   cspice_cylrec   cspice_deltet   cspice_et2lst   cspice_et2utc
   cspice_georec   cspice_latrec   cspice_pxform   cspice_pgrrec
   cspice_radrec   cspice_reccyl   cspice_recgeo   cspice_reclat
   cspice_recpgr   cspice_recrad   cspice_recsph   cspice_scdecd
   cspice_scencd   cspice_scs2e    cspice_sphrec   cspice_spkezr
   cspice_spkpos   cspice_str2et   cspice_sxform   cspice_timout
</PRE>
<BR><BR>
<A NAME="Windows"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Windows
</H3><P><BR><BR>
   Icy now includes interfaces to the full set of CSPICE window routines.
<P>
 
<PRE>
   cspice_wnelmd   cspice_wnincd   cspice_wnreld   cspice_wncomd
   cspice_wncond   cspice_wndifd   cspice_wnexpd   cspice_wnextd
   cspice_wnfetd   cspice_wnfild   cspice_wnfltd   cspice_wninsd
   cspice_wnintd   cspice_wnsumd   cspice_wnunid   cspice_wnvald
</PRE>
<BR><BR>
<A NAME="Other new interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Other new interfaces
</H3><P><BR><BR>
   The following new miscellaneous interfaces to SPICE routines were added
   to Icy in this release:
<P>
 
<PRE>
   cspice_bods2c   cspice_card     cspice_celli    cspice_celld
   cspice_dafopw   cspice_dafrs    cspice_deltet   cspice_et2lst
   cspice_pgrrec   cspice_recpgr   cspice_scard    cspice_size
   cspice_spkcov   cspice_spkobj   cspice_ssize
</PRE>
<BR><BR>
<A NAME="Bug Fixes5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="MKSPK Processing of TLE"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MKSPK Processing of TLE
</H3><P><BR><BR>
   A MKSPK bug causing the program to process improperly formatted TLE
   files without signaling an error and producing output SPK containing bad
   data was fixed.
<P>
 
<BR><BR>
<A NAME="MKSPK Adding Comments When Appending to Existing SPK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MKSPK Adding Comments When Appending to Existing SPK
</H3><P><BR><BR>
   A MKSPK bug causing the program, in some rare circumstances, to signal
   an error when adding comments to an existing SPK file was fixed.
<P>
 
<BR><BR>
<A NAME="Icy/cspice_getfov"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Icy/cspice_getfov
</H3><P><BR><BR>
   A bug that caused the interface to fail to release allocated memory when
   the FRAMEMISSING error signaled was fixed.
<P>
 
<BR><BR>
<A NAME="DVPOOL/dvpool_c/cspice_dvpool"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DVPOOL/<a href="../cspice/dvpool_c.html">dvpool_c</a>/cspice_dvpool
</H3><P><BR><BR>
   A bug causing the DVPOOL routine to not delete a specified kernel pool
   variable in some cases was fixed.
<P>
 
<BR><BR>
<A NAME="CSPICE/kdata_c Function"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CSPICE/<a href="../cspice/kdata_c.html">kdata_c</a> Function
</H3><P><BR><BR>
   A number of typos in the example provided in the header of the routine
   were corrected.
<P>
 
<BR><BR>
<A NAME="FRINFO/frinfo_c/cspice_frinfo"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> FRINFO/<a href="../cspice/frinfo_c.html">frinfo_c</a>/cspice_frinfo
</H3><P><BR><BR>
   A bug causing the FRINFO routine to treat any frame with a negative ID
   code and a frame definition not provided in the kernel pool as a
   CK-based frame was fixed. Now, instead of returning ``manufactured''
   attributes of a CK-based frame, the routine will generate an error for
   such inputs.
<P>
 
<BR><BR>
<A NAME="Version 57 --- March 2004"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 57 --- March 2004
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0057 version of the SPICE Toolkit is supported on the same
   environments as version N0056.
<P>
 
<BR><BR>
<A NAME="Icy0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Icy
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0057 version offers the first official release of Icy, the
   interface to the CSPICE library from Interactive Data Language (IDL), a
   product of Research Systems, Inc. (RSI, http://www.rsi.com). If Icy was
   provided with this package, refer to ``icy.req'' document and to the Icy
   HTML documentation pointed to by ``doc/html/index.html'' for more
   details.
<P>
 
<BR><BR>
<A NAME="SPICELIB/CSPICE"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SRFXPT0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SRFXPT
</H3><P><BR><BR>
   This new routine computes the surface intercept point of a specified ray
   on a target body at a specified epoch, optionally corrected for light
   time and stellar aberration. Its purpose is the same as for the SPICE
   routine SURFPT but unlike SURFPT is provides a much more flexible
   interface and computes geometry adjusted for light time and stellar
   aberration to the surface point rather than to the center of the target
   body. Therefore for most cases this routine makes SURFPT obsolete.
   Currently SRFXPT supports only the ellipsoid shape for target bodies but
   in the future it may be extended to support digital terrain models.
<P>
 
<BR><BR>
<A NAME="Support for Satellite IDs in the Range 10000-99999"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Support for Satellite IDs in the Range 10000-99999
</H3><P><BR><BR>
   NAIF PCK data access routines have been modified to recognize satellites
   with IDs in the 10000-99999 range.
<P>
 
<BR><BR>
<A NAME="Detection of Non-native Text Files"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Detection of Non-native Text Files
</H3><P><BR><BR>
   The SPICE data loading mechanism was extended to detect and prohibit
   loading text kernel files containing lines terminated with EOF
   character(s) non-native to the platform on which the Toolkit was
   compiled. If a non-native EOL terminator is detected in the first 132
   characters of a text kernel, the execution is stopped and an error
   message is displayed. This feature does not work with files that are
   smaller that 132 bytes or have the first line longer that 132
   characters.
<P>
 
<BR><BR>
<A NAME="Documentation5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   The Toolkit may now optionally include documentation in HTML format. It
   is provided in the ``doc/html'' subdirectory and is pointed to by the
   top level index file
<P>
 
<PRE>
   doc/html/index.html
</PRE>
   The headers of a few additional most often used routines have been
   revised to correct technical errors and grammar and/or spelling, improve
   clarity, and improve examples.
<P>
 
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -79         SPITZER
 
   Asteroids:
 
           2000216     KLEOPATRA
</PRE>
<BR><BR>
<A NAME="INSPEKT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> INSPEKT
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   INSPEKT was updated to generate comma-delimited reports. This output
   format can be set using the ``SET FORMAT DELIMITED ...'' command. See
   INSPEKT on-line help for more details.
<P>
 
<BR><BR>
<A NAME="TOBIN"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> TOBIN
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   TOBIN was modified to detect and prohibit processing input transfer
   files containing lines terminated with EOF character(s) non-native to
   the platform on which the Toolkit was compiled.
<P>
 
<BR><BR>
<A NAME="Version 56 --- August 2003"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 56 --- August 2003
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments6"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0056 version of the SPICE Toolkit is supported on the same
   environments as version N0055 except the following ``Classic'' Mac
   environments:
<P>
 
<PRE>
   Macintosh  MacOS9        Absoft FORTRAN
   Macintosh  MacOS9        Metrowerks Codewarrior C
</PRE>
   Contact NAIF if you wish to obtain the Toolkit for these two deprecated
   environments.
<P>
 
<BR><BR>
<A NAME="SPICELIB/CSPICE0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB/CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Documentation6"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   The headers of 20+ of the most often used routines have been revised for
   one or more of the following reasons:
<P>
 
<UL>
<TT>--</TT> to correct technical errors,
<BR><BR></UL>
<UL>
<TT>--</TT> to add pertinent new information,
<BR><BR></UL>
<UL>
<TT>--</TT> to improve clarity,
<BR><BR></UL>
<UL>
<TT>--</TT> to correct grammar and/or spelling,
<BR><BR></UL>
<UL>
<TT>--</TT> to improve examples.
<BR><BR></UL>
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions6"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the Toolkit:
<P>
 
<PRE>
   Spacecraft:
 
           -74         MRO
           -74         MARS RECON ORBITER
           -130        MUSES-C
           -142        TERRA
           -154        AQUA
           -159        EUROPA ORBITER
           -172        SPACETECH-3 COMBINER
           -188        MUSES-B
           -190        SIM
           -198        INTEGRAL
           -205        SPACETECH-3 COLLECTOR
           -234        STEREO AHEAD
           -235        STEREO BEHIND
           -253        OPPORTUNITY
           -254        SPIRIT
 
   Tracking Stations:
 
           398990      NEW NORCIA
 
   Jovian satellites:
 
           528         AUTONOE
           529         THYONE
           530         HERMIPPE
           531         AITNE
           532         EURYDOME
           533         EUANTHE
           534         EUPORIE
           535         ORTHOSIE
           536         SPONDE
           537         KALE
           538         PASITHEE
 
   Saturnian satellites:
 
           619         YMIR
           620         PAALIAQ
           621         TARVOS
           622         IJIRAQ
           623         SUTTUNG
           624         KIVIUQ
           625         MUNDILFARI
           626         ALBIORIX
           627         SKADI
           628         ERRIAPO
           629         SIARNAQ
           630         THRYM
 
   Uranian satellites:
 
           718         PROSPERO
           719         SETEBOS
           720         STEPHANO
           721         TRINCULO
</PRE>
<BR><BR>
<A NAME="CHRONOS0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CHRONOS
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   CHRONOS utility program has been modified to allow loading kernel files
   using FURNSH kernel pool keywords and to accept all setup information
   from the command line.
<P>
 
<BR><BR>
<A NAME="Bug Fixes6"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Reading Files with MAC-OSX Absoft FORTRAN Toolkit"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Reading Files with MAC-OSX Absoft FORTRAN Toolkit
</H3><P><BR><BR>
   Low level read routines were fixed to make sure that the OSX Absoft
   FORTRAN SPICE toolkit can read files not owned by the user.
<P>
 
<BR><BR>
<A NAME="DAS Scratch Files"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DAS Scratch Files
</H3><P><BR><BR>
   DASCLS routine has been modified to call the routine flushing DAS
   buffers before closing scratch DAS files. Failing to free the buffers
   caused write errors on HP/FORTRAN systems.
<P>
 
<BR><BR>
<A NAME="Argument Checking in CSPICE Error Handling Functions"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Argument Checking in CSPICE Error Handling Functions
</H3><P><BR><BR>
   The <a href="../cspice/errprt_c.html">errprt_c</a>, <a href="../cspice/errdev_c.html">errdev_c</a>, and <a href="../cspice/erract_c.html">erract_c</a> functions were updated to diagnose
   invalid operation keyword input.
<P>
 
<BR><BR>
<A NAME="Version 55 --- March 2003"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 55 --- March 2003
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments7"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0055 version of the SPICE Toolkit is supported on the same
   environments as version N0054.
<P>
 
<BR><BR>
<A NAME="SPICELIB"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SPKW01"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPKW01
</H3><P><BR><BR>
   SPK type 1 writer routine has been added.
<P>
 
<BR><BR>
<A NAME="DASCLS"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DASCLS
</H3><P><BR><BR>
   Scratch files no longer have their buffered portions flushed and are no
   longer segregated before before being closed. This change speeds up the
   close operation.
<P>
 
<BR><BR>
<A NAME="SPKBSR"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPKBSR
</H3><P><BR><BR>
   Segment buffer size was increased from 2000 to 10000 to improve
   efficiency when handling SPK files with large number of segments.
<P>
 
<BR><BR>
<A NAME="Kernel POOL"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel POOL
</H3><P><BR><BR>
   The buffer that stores distinct numeric data items from the text kernel
   files was increased. The new buffer size is 20000, which is the maximum
   total number of values for all numeric scalar and array pool variables
   together.
<P>
 
<BR><BR>
<A NAME="Type 1 SCLK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Type 1 SCLK
</H3><P><BR><BR>
   The buffer that stores Type 1 SCLK coefficients was increased. The new
   buffer size is 10000.
<P>
 
<BR><BR>
<A NAME="CSPICE1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New CSPICE wrappers"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE wrappers
</H3><P><BR><BR>
   Wrappers <a href="../cspice/dasac_c.html">dasac_c</a> and <a href="../cspice/dasec_c.html">dasec_c</a> have been added to CSPICE. These support
   DAS file comment area access.
<P>
 
<BR><BR>
<A NAME="Bug Fixes7"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Built-in NAIF ID Code/Name Definitions7"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in NAIF ID Code/Name Definitions
</H3><P><BR><BR>
   The following built-in NAIF ID code/name definitions have been corrected
   to match official MER name-ID mapping:
<P>
 
<PRE>
          -253     was MER-A, now MER-1
          -254     was MER-B, now MER-2
</PRE>
   MER-A and MER-B names are no longer supported by the Toolkit.
<P>
 
<BR><BR>
<A NAME="DASCUD"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DASCUD
</H3><P><BR><BR>
   DASCUD has been fixed so that it writes a new, empty cluster directory
   record at the correct location. This corrects an error introduced by a
   bug fix in N0054.
<P>
 
<BR><BR>
<A NAME="OSCELT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> OSCELT
</H3><P><BR><BR>
   OSCELT has been fixed so that it computes the argument of periapse
   correctly when the inclination is zero or 180 degrees. The mean anomaly
   computation has been corrected so that it works for circular and
   near-circular orbits. The computation of inclination has been changed to
   use ATAN2 for improved accuracy. Code that could generate arithmetic
   exceptions was corrected. Several new error checks have been added.
<P>
 
<BR><BR>
<A NAME="CKE050"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKE05
</H3><P><BR><BR>
   Angular velocity computations for subtypes 0 and 1 have been changed to
   make them compatible with those used by the MEX/Rosetta attitude file
   interpolation algorithms.
<P>
 
<BR><BR>
<A NAME="CKBRIEF3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF
</H3><P><BR><BR>
   CKBRIEF has been updated to retrieve and display interpolation interval
   information from Type 2 CK files correctly in all cases.
<P>
 
<BR><BR>
<A NAME="Version 54 --- December 2002"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 54 --- December 2002
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Mailing Lists"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Mailing Lists
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   NAIF has created 2 mailing lists, ``Spice_announce''
<P>
 
<PRE>
   http://naif.jpl.nasa.gov/mailman/listinfo/spice_announce
</PRE>
   and ``Spice_discussion''
<P>
 
<PRE>
   http://naif.jpl.nasa.gov/mailman/listinfo/spice_discussion
</PRE>
   ``Spice_announce'' is intended to provide notification of important
   developments such as a new toolkit release. Posting will generally be
   limited to members of the NAIF team. If you feel you have an important
   announcement that would be suitable for this list, you may send email to
   the list, but it will be reviewed by the NAIF team before dissemination.
<P>
 
   ``Spice_discussion'' is meant to provide a forum for discussion among
   SPICE users. Posting on this list is encouraged, however we also
   encourage you to limit mail traffic to the entire list. Extended
   discussions are often best carried out with a limited distribution list.
<P>
 
   Both lists require registration, allow access to an archive of prior
   postings and allow the user to choose whether to receive individual
   postings or a daily digest.
<P>
 
<BR><BR>
<A NAME="Environments8"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0054 version of the SPICE Toolkit is supported on the same
   environments as version N0053.
<P>
 
<BR><BR>
<A NAME="COOKBOOK Programs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> COOKBOOK Programs
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   FORTRAN and C versions of the COOKBOOK programs have been made more
   consistent in implementation and behavior. User's Guide documents for
   COOKBOOK programs have been updated and are now delivered with both
   FORTRAN and C toolkits. The FSTSPK COOKBOOK program has been deprecated
   and is no longer delivered.
<P>
 
<BR><BR>
<A NAME="New Built-in NAIF ID Code/Name Definitions"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> New Built-in NAIF ID Code/Name Definitions
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The following new built-in NAIF ID code/name definitions have been added
   to the toolkit:
<P>
 
<PRE>
   Spacecraft:
 
          -226     ROSETTA
 
   Jovian satellites:
 
           517     CALLIRRHOE
           518     THEMISTO
           519     MAGACLITE
           520     TAYGETE
           521     CHALDENE
           522     HARPALYKE
           523     KALYKE
           524     IOCASTE
           525     ERINOME
           526     ISONOE
           527     PRAXIDIKE
</PRE>
<BR><BR>
<A NAME="Documentation7"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   User's Guide documents for TOBIN, TOXFR and VERSION utility programs
   have been added to the toolkit documentation.
<P>
 
<BR><BR>
<A NAME="Bug Fixes8"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Built-in Body-Fixed Frame for Pan"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in Body-Fixed Frame for Pan
</H3><P><BR><BR>
   Definition of the built-in body-fixed frame for PAN (IAU_PAN) has been
   updated to point to the correct PCK values used to compute its rotation.
   In the previous version of the toolkit it was pointing to PANDORA's
   rotation constants.
<P>
 
<BR><BR>
<A NAME="Surface Intercept Routine"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Surface Intercept Routine
</H3><P><BR><BR>
   The surface intercept routine SURFPT/<a href="../cspice/surfpt_c.html">surfpt_c</a> has been re-implemented to
   reduce loss of precision.
<P>
 
<BR><BR>
<A NAME="DAS Writer Routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> DAS Writer Routines
</H3><P><BR><BR>
   DAS utility routine DASCUD has been fixed to ensure that DAS file
   structure is correct when files are closed without data segregation.
   Previously it was possible for unsegregated files to have an invalid
   final forward directory pointer. Note: this problem could not occur in
   E-kernels created by SPICE utility programs or using the SPICE EK API
   routines.
<P>
 
<BR><BR>
<A NAME="CSPICE Cell Implementation"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CSPICE Cell Implementation
</H3><P><BR><BR>
   The CELLINIT macro has been updated so that it doesn't modify data added
   to character cells prior to cell initialization. This enables population
   of uninitialized character cells via macro calls.
<P>
 
<BR><BR>
<A NAME="Body Name to Associated Frame Conversion Routine"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Body Name to Associated Frame Conversion Routine
</H3><P><BR><BR>
   The routine CNMFRM retrieving the reference frame name for a specified
   body name has been fixed so a TK frame specified by name and designated
   as an object's preferred frame via kernel pool assignments is found, and
   so that the correct name of this frame is returned.
<P>
 
<BR><BR>
<A NAME="CHRONOS1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CHRONOS
</H3><P><BR><BR>
   CHRONOS has been updated to make sure that the iterative search for the
   nearest local midnight converges in all cases. It has also been updated
   to use the maximum system allowed file name length on VAX and DEC Alpha
   environments.
<P>
 
<BR><BR>
<A NAME="Version 53 --- September 2002"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 53 --- September 2002
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments9"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0053 version of the SPICE Toolkit is supported in the following
   environments:
<P>
 
<PRE>
   PC         Linux         g77
   PC         Windows       Compaq Visual (Digital) FORTRAN
   PC         Windows       Lahey FORTRAN 95
   PC         Linux         gCC
   PC         Windows       Microsoft Visual C++
   Sun        Solaris       FORTRAN
   Sun        Solaris       Native C
   Sun        Solaris       gCC
   HP         UX            HP FORTRAN
   HP         UX            HP C
   Macintosh  MacOS         Absoft FORTRAN
   Macintosh  MacOS         Metrowerks Codewarrior C
   Macintosh  OS-X          g77
   Macintosh  OS-X          Absoft FORTRAN
   Macintosh  OS-X          Apple C
   SGI        IRIX          N32/O32 FORTRAN
   SGI        IRIX          MIPS C (N32/O32 ABIs)
   DEC Alpha  Digital Unix  Digital FORTRAN
   DEC Alpha  Digital Unix  Digital C
   Vax        VMS           Digital FORTRAN
</PRE>
   The PC/Linux/g77 version previously supported the alternative ``fort77''
   compiler. This is no longer the case. Contact NAIF if you need support
   for this compiler.
<P>
 
   The Macintosh OS-X environments are new.
<P>
 
<BR><BR>
<A NAME="CSPICE2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New CSPICE wrappers for cell, set, and windows routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE wrappers for cell, set, and windows routines
</H3><P><BR><BR>
   The complete set of C wrappers duplicating cell, sets, and windows
   capabilities existing in FORTRAN SPICE has been added to CSPICE.
<P>
 
<BR><BR>
<A NAME="New CSPICE wrappers for sorting and searching routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE wrappers for sorting and searching routines
</H3><P><BR><BR>
   The following new CSPICE wrappers implementing sorting and searching
   capabilities have been added:
<P>
 
<PRE>
   bscho*_c.c
   bsrch*_c.c
   <a href="../cspice/esrchc_c.html">esrchc_c</a>.c
   <a href="../cspice/isordv_c.html">isordv_c</a>.c
   isrch*_c.c
   lstle*_c.c
   lstlt*_c.c
   order*_c.c
   reord*_c.c
   shell*_c.c
</PRE>
<BR><BR>
<A NAME="New CSPICE wrappers for string manipulation and parsing routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE wrappers for string manipulation and parsing routines
</H3><P><BR><BR>
   The following new CSPICE wrappers for string manipulation and parsing
   capabilities have been added:
<P>
 
<PRE>
   cpos*_c.c
   pos*_c.c
   ncpos*_c.c
   <a href="../cspice/kxtrct_c.html">kxtrct_c</a>.c
   lpars*_c.c
   lx4*_c.c
   <a href="../cspice/lxqstr_c.html">lxqstr_c</a>.c
   repm*_c.c
</PRE>
<BR><BR>
<A NAME="SPICELIB0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SPK Type 18"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK Type 18
</H3><P><BR><BR>
   A new SPK type (Type 18) has been added. This incorporates ESA/ESOC
   model for a spacecraft ephemeris.
<P>
 
<BR><BR>
<A NAME="CK Type 5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK Type 5
</H3><P><BR><BR>
   A new CK type (Type 5) has been added. This incorporates ESA/ESOC model
   for a spacecraft attitude data.
<P>
 
<BR><BR>
<A NAME="BRIEF1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> BRIEF
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   BRIEF utility has been updated to allow summarizing SPKs containing
   ephemerides for up to 20,000 distinct bodies.
<P>
 
<BR><BR>
<A NAME="COOKBOOK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> COOKBOOK
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   COOKBOOK programs have been updated to use the highest level routines
   currently available in SPICE -- FURNSH, SUBPT, etc.
<P>
 
<BR><BR>
<A NAME="Bug Fixes9"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="ID-to-name Translation"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ID-to-name Translation
</H3><P><BR><BR>
   SPICE's ID-to-name mapping subsystem has been updated to provide
   consistent behavior across all of its interfaces. It now correctly
   processes duplicate ID-to-name mapping assignments provided via text
   kernel files. Refer to the NAIF_IDS Required Reading for more details.
<P>
 
<BR><BR>
<A NAME="Built-in Body-Fixed Frames"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Built-in Body-Fixed Frames
</H3><P><BR><BR>
   Missing body-fixed frames -- IAU_PAN, IAU_GASPRA, IAU_IDA, and IAU_EROS
   -- have been added to the built-in frame set.
<P>
 
<BR><BR>
<A NAME="Binary architecture consistency check at run-time"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Binary architecture consistency check at run-time
</H3><P><BR><BR>
   Binary file format consistency check has been implemented at run time to
   verify that the toolkit prepared specifically for a platform with one
   binary file format has not been compiled/used on a platform with another
   binary file format.
<P>
 
<BR><BR>
<A NAME="Long/truncated lines in text kernel files"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Long/truncated lines in text kernel files
</H3><P><BR><BR>
   The text kernel file reader has been modified to correctly process
   truncated string value assignments.
<P>
 
<BR><BR>
<A NAME="VMS Read-Only Access File Open Failure"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> VMS Read-Only Access File Open Failure
</H3><P><BR><BR>
   A bug in the DAF system preventing users on VMS systems from loading
   SPK, CK and binary PCK files with the read-only attribute(*) has been
   fixed.
<P>
 
<BR><BR>
<A NAME="Version 52 --- January 2002"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 52 --- January 2002
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="Environments10"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Environments
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The N0052 version of the SPICE Toolkit is supported on the following
   environments:
<P>
 
<PRE>
   PC         Linux         G77
   PC         Windows       Compaq Visual (Digital) Fortran
   PC         Windows       Lahey Fortran 95
   PC         Linux         GCC
   PC         Windows       Microsoft Visual C++
   Sun        Solaris       Fortran
   Sun        Solaris       Native C
   Sun        Solaris       GCC
   HP         UX            HP Fortran
   HP         UX            HP C
   Macintosh  MacOS         Absoft Fortran
   Macintosh  MacOS         Metrowerks Codewarrior C
   SGI        IRIX          N32/O32 Fortran
   SGI        IRIX          MIPS C (N32/O32 ABIs)
   DEC Alpha  Digital Unix  Digital Fortran
   DEC Alpha  Digital Unix  Digital C
   Vax        VMS           Digital Fortran
</PRE>
   The N0052 version of the SPICE Toolkit is no longer supported on the
   following environments:
<P>
 
<PRE>
   PC         Windows       Lahey F77L3
   PC         Windows       Microsoft Powerstation Fortran 1.x
   PC         Windows       Microsoft Powerstation Fortran 4.x
   Sun        SunOS         Fortran
   Macintosh  MacOS         Language Systems Fortran
   Next       Nextstep      Absoft Fortran
   Next       Nextstep      GCC
</PRE>
   Contact NAIF if you wish to obtain the Toolkit for one or more of these
   deprecated environments.
<P>
 
<BR><BR>
<A NAME="SPICELIB1"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Run-Time Binary File Format Translation"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Run-Time Binary File Format Translation
</H3><P><BR><BR>
   The most popular supported systems (including Macintosh, PC, and UNIX
   platforms) are now capable of accessing data in binary SPICE kernel
   files from other platforms directly without using transfer format. But
   note that binary files from other platforms are only available for read
   access. See the Convert User's Guide for specifics and details.
<P>
 
<BR><BR>
<A NAME="Open File Limit Increase"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Open File Limit Increase
</H3><P><BR><BR>
   The sum of loaded SPK, CK, and binary PCK files, all of which are
   implemented using the DAF file architecture, may now reach 1000.
   Previous versions of the toolkit restricted the number of loaded DAFs to
   20. But caution: loading large numbers of files may impact system
   performance.
<P>
 
<BR><BR>
<A NAME="SPK aberration corrections"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK aberration corrections
</H3><P><BR><BR>
   SPK readers can now perform aberration corrections for transmitted, as
   well as received, radiation. This feature makes it simple to compute the
   direction in which radiation must be emitted in order to reach a
   specified target.
<P>
 
   The headers of the SPK readers have been expanded to explain aberration
   corrections in greater detail.
<P>
 
<BR><BR>
<A NAME="Instrument Kernel Support"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Instrument Kernel Support
</H3><P><BR><BR>
   GETFOV was extended to compute boundary corners from FOV definitions in
   the kernel pool utilizing the new ANGLES specification. See GETFOV's or
   <a href="../cspice/getfov_c.html">getfov_c</a>'s header for details.
<P>
 
<BR><BR>
<A NAME="Kernel POOL0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel POOL
</H3><P><BR><BR>
   The buffers that store text kernel data were increased. The new maximums
   are:
<P>
 
<PRE>
   Maximum Number of Variables                     5003
   Maximum Number of Distinct Numeric Data Items  10000 (*)
   Maximum Number of Character Strings             4000 (**)
</PRE>
   (*) This is the maximum total number of values for all numeric scalar
   and array pool variables together. (**) This is the maximum total number
   of values for all character scalar and array pool variables together.
<P>
 
   These changes allow the kernel pool to hold substantially more data than
   previous versions of the SPICE toolkit, which became necessary due to
   the increasing use of such SPICE components as IK and FK utilizing the
   POOL as the data repository and access mechanism.
<P>
 
<BR><BR>
<A NAME="Jacobian routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Jacobian routines
</H3><P><BR><BR>
   Routines have been added for computing the Jacobians of the
   transformations between rectangular and the following coordinate
   systems:
<P>
 
<PRE>
   cylindrical
   geodetic
   latitudinal
   spherical
</PRE>
   The Jacobian routines support transformation of velocities between these
   coordinate systems. See the headers of the following SPICELIB
   routines/CSPICE functions for more information:
<P>
 
<PRE>
   DCYLDR/<a href="../cspice/dcyldr_c.html">dcyldr_c</a>
   DGEODR/<a href="../cspice/dgeodr_c.html">dgeodr_c</a>
   DLATDR/<a href="../cspice/dlatdr_c.html">dlatdr_c</a>
   DSPHDR/<a href="../cspice/dsphdr_c.html">dsphdr_c</a>
   DRDCYL/<a href="../cspice/drdcyl_c.html">drdcyl_c</a>
   DRDGEO/<a href="../cspice/drdgeo_c.html">drdgeo_c</a>
   DRDLAT/<a href="../cspice/drdlat_c.html">drdlat_c</a>
   DRDSPH/<a href="../cspice/drdsph_c.html">drdsph_c</a>
</PRE>
<BR><BR>
<A NAME="NAIF ID to Object Name Mapping"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> NAIF ID to Object Name Mapping
</H3><P><BR><BR>
   The NAIF IDs for the following missions has been added to the set of IDs
   built into SPICE:
<P>
 
<PRE>
   CONTOUR
   LUNAR-A
   DRTS-WC
   MARS EXPRESS
   DEEP IMPACT
   STARLIGHT
   MER
</PRE>
<BR><BR>
<A NAME="Documentation8"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   DAS and EK Required Reading documents have been added to the SPICE
   Toolkit.
<P>
 
   The CONVERT User's Guide has been updated to reflect new run-time binary
   file format translation capability.
<P>
 
   The FRAMES Required Reading has been updated to include inertial frame
   information formerly contained in the NAIF_IDS Required Reading.
<P>
 
   The NAIF_IDS Required Reading has been updated to reflect new Toolkit
   capability, through which the NAIF ID to name mappings can be defined
   using text kernel files.
<P>
 
   The MKSPK User's Guide has been updated to add clarity throughout.
<P>
 
   The ERROR, PCK, ROTATIONS, SPK, and TIME Required Reading documents have
   all been improved.
<P>
 
<BR><BR>
<A NAME="CSPICE3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="New CSPICE wrappers for EK routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> New CSPICE wrappers for EK routines
</H3><P><BR><BR>
   CSPICE wrappers have been added to support record-oriented EK
   manipulation, including record-oriented writing, updating, and reading.
<P>
 
   CSPICE wrappers have been added to provide summary capabilities for
   loaded EK tables.
<P>
 
<BR><BR>
<A NAME="Miscellaneous new CSPICE wrappers"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Miscellaneous new CSPICE wrappers
</H3><P><BR><BR>
   Some new CSPICE wrappers have been added:
<P>
 
<PRE>
   <a href="../cspice/frmnam_c.html">frmnam_c</a>
   <a href="../cspice/inelpl_c.html">inelpl_c</a>
   <a href="../cspice/namfrm_c.html">namfrm_c</a>
</PRE>
<BR><BR>
<A NAME="CKBRIEF4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CKBRIEF
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   A capability to display a separate record for each interpolation
   interval in each segment of a Type 2 or Type 3 CK file has been added to
   the program. This capability is implemented using the ``-dump'' command
   line option.
<P>
 
<BR><BR>
<A NAME="COMMNT"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> COMMNT
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   An inconsistency between the program's functionality in interactive and
   command line modes has been fixed. The maximum length of a comment line
   that can be added to and extracted from the comments in either mode is
   now the same and is equal to 1000 characters.
<P>
 
<BR><BR>
<A NAME="MKSPK2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> MKSPK
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The program was modified to allow appending new data segments to an
   existing SPK file.
<P>
 
<BR><BR>
<A NAME="VERSION"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> VERSION
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The interface of this utility program has been extended: a command line
   parameter causing the program to display additional library information
   has been added. See ``version -help'' for details.
<P>
 
<BR><BR>
<A NAME="Bug Fixes10"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Bug Fixes
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="CK, PCK, and SPK segment buffering and selection"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK, PCK, and SPK segment buffering and selection
</H3><P><BR><BR>
   Several bugs have been corrected in the modules CKBSR, PCKBSR, and
   SPKBSR. These bug fixes enable users to load more segments than can be
   buffered at once by these modules. However, the best run-time speed is
   still obtained when all segments of a given kernel type can be buffered.
   The current segment buffer sizes are:
<P>
 
<PRE>
   CK:    4000 segments
   SPK:   2000 segments
   PCK:    100 segments
</PRE>
<BR><BR>
<A NAME="Const-qualification for various CSPICE interfaces"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Const-qualification for various CSPICE interfaces
</H3><P><BR><BR>
   A number of CSPICE function interfaces have been updated to add
   const-qualification of input arrays. This fix enhances compatibility
   with C++ applications.
<P>
 
<BR><BR>
<A NAME="CSPICE function gcpool_c fixed"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CSPICE function <a href="../cspice/gcpool_c.html">gcpool_c</a> fixed
</H3><P><BR><BR>
   This routine did not properly trim trailing blanks from values in its
   output array.
<P>
 
<BR><BR>
<A NAME="MOVED fix for Fortran PC Linux platform"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MOVED fix for Fortran PC Linux platform
</H3><P><BR><BR>
   In some cases the routine MOVED incorrectly copied double precision
   numbers whose values were assigned via EQUIVALENCE statements with pairs
   of integers. This could happen when the integer bit patterns did not
   correspond to valid double precision numbers. This problem prevented
   correct manipulation of some DAF segment descriptors.
<P>
 
<BR><BR>
<A NAME="EK query processing using LIKE operator and null values"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EK query processing using LIKE operator and null values
</H3><P><BR><BR>
   Null values could be returned in some rare circumstances when a query
   employed the LIKE operator to compare scalar string column entries
   against a specified string value, and a null column entry was compared.
<P>
 
<BR><BR>
<A NAME="EK time conversion"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EK time conversion
</H3><P><BR><BR>
   The EK time parsing code handled SCLK values incorrectly when the string
   ``SCLK'' appeared in the name of the clock.
<P>
 
<BR><BR>
<A NAME="EK documentation"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> EK documentation
</H3><P><BR><BR>
   Various headers have been updated to indicate that query-and-fetch
   operations and EK fast writer operations may not be interleaved.
<P>
 
<BR><BR>
<A NAME="Source code clean-up"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Source code clean-up
</H3><P><BR><BR>
   Miscellaneous problems triggering annoying but insignificant compilation
   warnings have been fixed. Various files have had TAB characters removed.
   Others have had final newline characters added.
<P>
 
<BR><BR>
<A NAME="Version 51 --- April 2000"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 51 --- April 2000
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="SPICELIB2"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICELIB
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Instrument Kernel Support0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Instrument Kernel Support
</H3><P><BR><BR>
   The routine GETFOV was added to the Toolkit. It returns information
   describing the shape, size, boresight, and orientation of the field of
   view for traditional remote sensing instruments.
<P>
 
<BR><BR>
<A NAME="Binary Kernel Recognition"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Binary Kernel Recognition
</H3><P><BR><BR>
   The routine GETFAT was upgraded to use a more robust algorithm for
   identifying the type (SPK or CK) of inadequately labeled binary kernels.
   This modification is critical for Mars project SPICE customers who wish
   to use the SPICELIB utility FURNSH when loading binary kernels.
<P>
 
<BR><BR>
<A NAME="CK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK
</H3><P><BR><BR>
   A new representation for the orientation of spacecraft structures has
   been added to the C-kernel system. C-kernel data type 04 provides a
   flexible and compact method for representing the attitude of structures
   by using Chebyshev polynomials to fit orientation data or models.
<P>
 
<BR><BR>
<A NAME="SPK"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK
</H3><P><BR><BR>
   Two new representations for position and velocity of objects have been
   added to the SPK system. Types 12 and 13 provide for the Hermite
   interpolation of states from series of state vectors. See the SPK
   Required Reading for further details.
<P>
 
<BR><BR>
<A NAME="Miscellaneous"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Miscellaneous
</H3><P><BR><BR>
   The list of names recognized by BODTRN was enhanced to support the
   identification of the "Cluster" spacecraft (1,2,3 and 4) as well as the
   Pluto-Kuiper Express spacecraft and simulation.
<P>
 
<BR><BR>
<A NAME="MKSPK3"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> MKSPK
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The utility program MKSPK has been added to the general release of the
   SPICE Toolkit. This allows SPICE customers to more easily generate SPK
   files from tabular ephemeris information. See the User's Guide
   (<a href="../ug/mkspk.html">mkspk.ug</a>) for details on the use of MKSPK.
<P>
 
<BR><BR>
<A NAME="SPKMERGE"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPKMERGE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   The program was upgraded to correct an "infinite loop" that existed in
   rare cases on some platforms.
<P>
 
<BR><BR>
<A NAME="Bug Fixes11"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Bug Fixes
</H3><P><BR><BR>
   Although it is unlikely that most users will notice any difference, a
   number of minor bug corrections have been incorporated:
<P>
 
<UL>
<TT>--</TT> The kernel pool software was modified to detect and handle string
specifications that are too long to be stored in the kernel pool.
<BR><BR></UL>
<UL>
<TT>--</TT> The time parsing software (used by STR2ET) was enhanced so that erroneous
long strings will be diagnosed as erroneous and no longer cause a run-time
error.
<BR><BR></UL>
<BR><BR>
<A NAME="Version 50 --- October 1999"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 50 --- October 1999
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
<BR><BR>
<A NAME="CSPICE4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> CSPICE
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   Version 50 of the SPICE Toolkit includes a C language edition of the
   Toolkit. This provides a C language interface to the Toolkit and
   duplicates the FORTRAN capabilities. SPICE users interested in a C
   version of the Toolkit should specifically request the CSPICE version.
   Moreover, C users should read the document "CSPICE User's Guide" which
   addresses issues regarding the translation of the FORTRAN Toolkit to C.
<P>
 
<BR><BR>
<A NAME="Additions and Extensions to SPICE routines"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Additions and Extensions to SPICE routines
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="Loading Kernels"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Loading Kernels
</H3><P><BR><BR>
   The new routine FURNSH provides a single uniform interface for loading
   all SPICE kernels. In addition, the new interface allows you create a
   "meta-kernel" listing which SPICE kernels should be loaded. When this
   "meta-kernel" is supplied to FURNSH, all listed kernels will be loaded
   into the appropriate SPICE subsystems. It is anticipated that this new
   interface will substantially ease the problem of managing and loading
   SPICE kernels.
<P>
 
   In addition to the routine FURNSH several related routines are provided
   to assist with the run-time management of kernels loaded through the
   FURNSH interface.
<P>
 
<DL><DT>
<B>
 KTOTAL
</B><BR><BR>
<DD>
 returns the number of kernels that are currently available to your
program as a result of previous calls to FURNSH and UNLOAD.<BR>
</DL>
<DL><DT>
<B>
 KDATA
</B><BR><BR>
<DD>
 provides an interface for retrieving (in order of their specification
through FURNSH) kernels that are active in your application.<BR>
</DL>
<DL><DT>
<B>
 KINFO
</B><BR><BR>
<DD>
 allows you to retrieve information about a loaded kernel using the name
of that kernel.<BR>
</DL>
<DL><DT>
<B>
 UNLOAD
</B><BR><BR>
<DD>
 provides an interface for unloading kernels that have been loaded via
the routine FURNSH.<BR>
</DL>
   FORTRAN users should consult the header for the routine KEEPER for
   details on the use of these routines. C users should see the specific
   files <a href="../cspice/furnsh_c.html">furnsh_c</a>.c, ktotal_c.c, <a href="../cspice/kdata_c.html">kdata_c</a>.c, <a href="../cspice/kinfo_c.html">kinfo_c</a>.c and <a href="../cspice/unload_c.html">unload_c</a>.c
<P>
 
<BR><BR>
<A NAME="Position Only Interface."></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Position Only Interface.
</H3><P><BR><BR>
   The Frames and SPK subsystems have been extended to provide a "position
   only" interface. The user level routines in the extension are:
<P>
 
<DL><DT>
<B>
 SPKPOS
</B><BR><BR>
<DD>
 returns the 3-vector giving the location of one object as seen from
another corrected for light time and stellar aberration (if requested
by the user) in the user specified reference frame.<BR>
</DL>
<DL><DT>
<B>
 PXFORM
</B><BR><BR>
<DD>
 returns the 3x3 matrix that transforms positions from one reference
frame to another as a function of time.<BR>
</DL>
   These routines run slightly faster than their position and velocity
   counter parts: SPKEZR and SXFORM. In addition they allow you to use
   C-kernel based frames when the C-kernel does not contain angular
   velocity data.
<P>
 
   See the routines PXFORM and SPKPOS for details on their use.
<P>
 
<BR><BR>
<A NAME="ID-codes"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> ID-codes
</H3><P><BR><BR>
   The name/ID-code translation routines (BODN2C and BODC2N) have been
   extended so that users may add missing name/ID-code mappings to SPICE
   text kernels. Using this new capability, users can extend the built-in
   name/ID-code mapping by simply loading an appropriate SPICE text kernel
   with the interface FURNSH.
<P>
 
<BR><BR>
<A NAME="Kernel Pool Enhancements"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Kernel Pool Enhancements
</H3><P><BR><BR>
   Several new kernel pool interfaces have been provided
<P>
 
<DL><DT>
<B>
 STPOOL
</B><BR><BR>
<DD>
 Allows storage of long string valued variables through use of a
continuation character.<BR>
</DL>
<DL><DT>
<B>
 PCPOOL
</B><BR><BR>
<DD>
 Allows the insertion of a character variable directly into the kernel
pool without supplying a text kernel.<BR>
</DL>
<DL><DT>
<B>
 PDPOOL
</B><BR><BR>
<DD>
 Allows the insertion of a double precision variable directly into the
kernel pool without supplying a text kernel.<BR>
</DL>
<DL><DT>
<B>
 PIPOOL
</B><BR><BR>
<DD>
 Allows the insertion of an integer variable directly into the kernel
pool without supplying a text kernel.<BR>
</DL>
<DL><DT>
<B>
 LMPOOL
</B><BR><BR>
<DD>
 Similar to LDPOOL, but the text kernel is stored in an array of strings
instead of an external file.<BR>
</DL>
<DL><DT>
<B>
 SZPOOL
</B><BR><BR>
<DD>
 allows run time retrieval of kernel pool memory parameters.<BR>
</DL>
<DL><DT>
<B>
 DVPOOL
</B><BR><BR>
<DD>
 allows deletion of a specific variable from the kernel pool.<BR>
</DL>
<DL><DT>
<B>
 GNPOOL
</B><BR><BR>
<DD>
 assists in determining which variables are defined in the kernel pool
via variable name template matching.<BR>
</DL>
<BR><BR>
<A NAME="Continuous Spacecraft Clocks"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Continuous Spacecraft Clocks
</H3><P><BR><BR>
   The Spacecraft Clock system has been extended so that "ticks" can be
   modeled continuously instead of discretely. See the SCLK required
   reading for more details.
<P>
 
<BR><BR>
<A NAME="Bad FTP File Transfer Detection"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Bad FTP File Transfer Detection
</H3><P><BR><BR>
   SPICE binary kernels have been enhanced so that Toolkit software can
   detect whether a binary kernel has been transferred using ASCII instead
   of BINARY transfer mode. Note that only SPICE binary kernels produced
   with the N0050 (or later) version of the SPICE Toolkit will have
   features required for this diagnosis.
<P>
 
<BR><BR>
<A NAME="CK Writer Enhancements"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CK Writer Enhancements
</H3><P><BR><BR>
   The SPICE C-kernel writers have been enhanced to check that quaternions
   supplied to the writer are indeed nearly unit length. This check allows
   detection of programming errors earlier in the kernel production
   process.
<P>
 
<BR><BR>
<A NAME="Bugs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Bugs
</H3><P><BR><BR>
   No bugs were identified between version N0049 and N0050 of the Toolkit.
   However, users may notice that several routines have minor changes. The
   main reasons for code changes are:
<P>
 
<UL>
<TT>1.</TT> Extending the range of inputs that can be handled by SPICE routines.
<BR><BR></UL>
<UL>
<TT>2.</TT> Balancing the use of the SPICE error handling Check-in/Check-out tracing
mechanism.
<BR><BR></UL>
<UL>
<TT>3.</TT> Removal of unused variables.
<BR><BR></UL>
<UL>
<TT>4.</TT> Corrections in grammar, spelling and other typographic errors in the
headers of SPICE routines.
<BR><BR></UL>
<BR><BR>
<A NAME="SPICE Utility Programs"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> SPICE Utility Programs
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="TOBIN0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> TOBIN
</H3><P><BR><BR>
   The utility program TOBIN which converts transfer format kernels to
   binary form, can now process transfer format kernels that have been
   wrapped with SFDUs.
<P>
 
<BR><BR>
<A NAME="COMMNT0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> COMMNT
</H3><P><BR><BR>
   COMMNT now accepts command line arguments making it usable from user
   scripts.
<P>
 
<BR><BR>
<A NAME="CKBRIEF5"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CKBRIEF
</H3><P><BR><BR>
   CKBRIEF is a new utility that allows you to quickly summarize a C-kernel
   in a manner similar to the summary capabilities provided by the SPK
   summary tool, BRIEF.
<P>
 
<BR><BR>
<A NAME="MKSPK4"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> MKSPK
</H3><P><BR><BR>
   MKSPK is a utility program that allows users to generate SPK files from
   appropriate and suitably tabularized position and velocity information.
<P>
 
<BR><BR>
<A NAME="Documentation9"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   Many SPICE documents were edited and brought up to date. Most notable of
   these is the document <a href="../req/kernel.html">KERNEL.REQ</a> which discusses SPICE text kernels and
   the use of the kernel pool.
<P>
 
   In addition a new document called "Common Problems" (<a href="../req/problems.html">problems.req</a>) has
   been included with the standard SPICE documentation. This document is
   intended to help you in trouble shooting problems that may arise with
   programming with the SPICE Toolkit.
<P>
 
<BR><BR>
<A NAME="Version 49 --- September 1998"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 49 --- September 1998
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   Version 49 of the SPICE Toolkit exists only to fix errors that were
   identified in version 48 of the Toolkit. The routines in SPICELIB that
   were corrected are:
<P>
 
<PRE>
   DELTET  --- obsolete routine maintained only for
               backwards compatibility. A bug was
               introduced in Version 48 that could
               lead to 0.003 seconds of error in outputs.
   DPFMT   --- documentation corrections.
   EKQMRT  --- a boundary bug was corrected.
   SPKW02  --- documentation correction
   TIMDEF  --- a bug was fixed that can only be manifested
               when the default exception handling is modified.
   TIMOUT  --- correction of grammatical errors in header.
</PRE>
<BR><BR>
<A NAME="Version 48 --- May 1998"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 48 --- May 1998
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   Version 48 of the SPICE Toolkit extends the set of supported platforms
   to include PCs running the LINUX operating system.
<P>
 
   The time system was modified so that two digit years are interpreted as
   belonging to the years 1969-2068 inclusive.
<P>
 
   In addition a number of minor bugs have been fixed. The intended
   functionality of the Toolkit has not changed. The most significant bug
   fixes are listed here.
<P>
 
<PRE>
   conics.for was updated.
 
      There was a coding error in the computation of the mean
      anomaly in the parabolic case. This problem has been
      corrected.
 
   et2lst.for was updated.
 
      The integer variable SUN was never initialized in the
      previous version of the routine. Now it is set to
      the proper value of 10.
 
   str2et.for was updated.
 
      The previous versions of this routine did not correctly
      convert day-of-year strings in the TDB or TDT systems.
      They treated the day of year as year, month, day giving
      spectacularly wrong answers.
 
      In addition, comments concerning the default century for
      abbreviated years were updated to reflect changes to TEXPYR
 
   timout.for was updated.
 
      The previous version of this routine did not output
      fractional components for epochs prior to 1 A.D.
 
      In addition, the default time system, calendar and time zone
      are obtained from TIMDEF.
 
</PRE>
<BR><BR>
<A NAME="Version 47 --- July 1997"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 47 --- July 1997
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes the significant changes to version 47 of the
   SPICE Toolkit.
<P>
 
<BR><BR>
<A NAME="Documentation10"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Documentation
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   There are two significant documentation changes to version 47 of the
   Toolkit.
<P>
 
<UL>
<TT>1.</TT> The Required Reading for SPK (<a href="../req/spk.html">SPK.REQ</a>) has been re-written to address the
use of non-inertial frames within the SPK system.
<BR><BR></UL>
<UL>
<TT>2.</TT> The Frames subsystem has been documented in the required reading file
<a href="../req/frames.html">FRAMES.REQ</a>. This document describes the various reference systems that are
currently supported by the Toolkit as well as naming and numbering
conventions that will be adhered to by NAIF.
<BR><BR></UL>
   These two documents together with the extensions to the frame system
   that have been added in version 47 allows one to easily model the
   dynamics of structures on spacecraft or surface rovers.
<P>
 
   In addition to these major modifications to the base SPICE
   documentation, the document <a href="../req/time.html">TIME.REQ</a> has been updated to reflect a
   slight broadening of recognized time strings and to document the routine
   ET2LST that allows the user to convert to ephemeris time to local solar
   time for any natural ephemeris object.
<P>
 
<BR><BR>
<A NAME="Software"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Software
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
<BR><BR>
<A NAME="SPK0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK
</H3><P><BR><BR>
   The SPK ephemeris system has been expanded to support Space Command Two
   Line Elements (formally known as NORAD Two Line Elements) and
   equinoctial elements.
<P>
 
   To assist SPICE users who need to create SPK files that contain two line
   element sets, NAIF has a preliminary utility that allows the creation of
   SPK files from two line element data. This tool is available from NAIF
   on an as-needed basis. This utility is still a bit rough around the
   edges and has not yet been made an official Toolkit product.
<P>
 
<BR><BR>
<A NAME="Frames"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Frames
</H3><P><BR><BR>
   The frame system has been extended to support reference frames that can
   be described as a constant rotation from another frame (such as a
   bodyfixed, inertial or C-kernel frame). These frames are easily
   described using text based kernels. This new frame type is well suited
   for describing instrument, lander and topocentric frames.
<P>
 
<BR><BR>
<A NAME="Time"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Time
</H3><P><BR><BR>
   The time parsing software was enhanced so that a slightly broader set of
   time formats are recognized. In addition the routine ET2LST was added to
   the Toolkit. This routine allows you to convert ET (ephemeris time TDB)
   to local solar time for a planet, satellite comet or asteroid. Local
   solar time is a "clock" measure of the angle between a local meridian
   and the meridian of the sun. See the TIME required reading for further
   details.
<P>
 
<BR><BR>
<A NAME="Bug Fixes12"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Bug Fixes
</H3><P><BR><BR>
   The routines CKGPAV and CKFXFM in versions prior to version 47 of the
   Toolkit dealt with angular velocity in non-inertial frames incorrectly.
   This error did not affect C-kernels that were described relative to
   inertial frames. In those rare instances in which a C-kernel was
   described relative to a non-inertial frame, the mistreatment of angular
   velocity could lead to errors in the computation of velocities relative
   to the C-kernel frame. The computation of positions were not affected by
   this error.
<P>
 
   The routine TIMOUT in version 46 did not reliably produce an abbreviated
   two-digit year. This error has been corrected.
<P>
 
   All other errors were of a technical nature such as improper use of the
   SPICE exception handling subsystem and are unlikely to have affected
   most SPICE users.
<P>
 
<BR><BR>
<A NAME="Version 46 --- January 1997"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 46 --- January 1997
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes the significant changes to version 46 of the
   SPICE Toolkit.
<P>
 
<BR><BR>
<A NAME="Documentation11"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Documentation
</H3><P><BR><BR>
   NAIF now has available two overview documents that provide users with a
   higher level view of Toolkit. The two documents are called
<P>
 
<PRE>
   Introduction to SPICE
   Most Useful SPICELIB Subroutines
</PRE>
   These documents are available in the ``doc'' subdirectory of the Toolkit
   in the postscript files
<P>
 
<PRE>
   intro.ps
   mostused.ps
</PRE>
   respectively.
<P>
 
   The first of these documents, ``Introduction to SPICE'', provides a
   broad overview of the SPICE system and attempts to lay out a map of
   where you can find more specific information about the various
   components of the SPICE system. The second document ``Most Useful
   SPICELIB Routines'' categorizes 120 or so of the most frequently used
   SPICELIB routines and provides a synopsis for each of these.
<P>
 
<BR><BR>
<A NAME="Time0"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Time
</H3><P><BR><BR>
   The time software has undergone significant enhancement. The Toolkit now
   supports a wider set of time formats and time systems. The most
   important new routines are:
<P>
 
<PRE>
   STR2ET
   TIMOUT
   TTRANS
   TPARTV
</PRE>
   The new time software is outlined in the ``recommended reading'' file
   --- <a href="../req/time.html">TIME.REQ</a> which appears in the ``doc'' subdirectory of the Toolkit.
<P>
 
   A number of convenience routines have been added to the Toolkit. Those
   likely to be of most interest to users are:
<P>
 
<DL><DT>
<B>
 DPFMT
</B><BR><BR>
<DD>
 The routine DPFMT allows you to create a string representing a number
by supplying a ``picture'' that should be followed in formatting the
string.<BR>
</DL>
<DL><DT>
<B>
 TOSTDO
</B><BR><BR>
<DD>
 The routine TOSTDO is a portable means of writing strings to ``standard
output.'' The particulars of formatting on various platforms are
handled transparently. Using this routine, you can isolate yourself
from formatting considerations that arise when using the intrinsic
FORTRAN WRITE statement.<BR>
</DL>
   The remainder of the modifications to the Toolkit are primarily to ease
   problems associated with maintenance of the Toolkit.
<P>
 
<BR><BR>
<A NAME="Version 45 --- October 1996"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 45 --- October 1996
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   Version 45 is a quick update to correct an oversight in versions 43 and
   44. Although the reference frames DE-143 was added to the collection of
   non-inertial reference frames in version 43, it was not available to all
   of the SPICE subsystems. Version 45 corrects this deficiency.
<P>
 
   In addition to this correction to the reference frame subsystem, a
   number of minor corrections were made to the DAS subsystem and to error
   messages returned by EK software.
<P>
 
<BR><BR>
<A NAME="Version 44 --- August 1996"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 44 --- August 1996
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes the significant changes to version 44 of the
   SPICE Toolkit.
<P>
 
<BR><BR>
<A NAME="SPK Subsystem"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> SPK Subsystem
</H3><P><BR><BR>
   The main workhorse routine of the SPK subsystem, SPKGEO, was modified to
   remove potentially redundant computations. As a result, some
   applications may see a performance improvement on the order of 60
   percent.
<P>
 
<BR><BR>
<A NAME="Inspekt"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Inspekt
</H3><P><BR><BR>
   Inspekt was upgraded to support the DEC Alpha OSF/1 environment. All
   functional aspects of Inspekt are now fully supported in the DEC Alpha
   OSF/1 environment.
<P>
 
<BR><BR>
<A NAME="Bug Fixes13"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Bug Fixes
</H3><P><BR><BR>
   Several errors in the EK and supporting DAS subsystem were corrected.
   These fixes will be visible to only a small number of SPICE users.
   (Primarily those users who create E-kernels or access the EK files
   directly through the subroutine interface.) Users whose primary use of
   E-kernels is via the program Inspekt will see no visible changes in the
   SPICE system.
<P>
 
   The generic segment subsystem was corrected. The errors were discovered
   by the NAIF staff while developing new SPK data types. These new data
   types are not yet incorporated into SPICELIB. Consequently users of the
   SPICE system are unlikely to have used any of the code in which these
   errors were found.
<P>
 
   The frames subsystem was corrected. In NAIF's experiments in converting
   the library to C, an error was found in the routine FRMCHG. This error
   is of a pedantic nature and has not surfaced in any of the supported
   native FORTRAN environments.
<P>
 
<BR><BR>
<A NAME="Version 43 --- May 1996"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 43 --- May 1996
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes the new capabilities available in version 43 of
   the SPICE Toolkit.
<P>
 
<BR><BR>
<A NAME="Brief"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Brief
</H3><P><BR><BR>
   The SPICE utility program BRIEF has been added to the generic SPICE
   Toolkit. This program allows you to easily summarize the contents of an
   SPK file. The summary can be tuned depending upon the level of detail
   you are interested in seeing. See the BRIEF User's Guide (<a href="../ug/brief.html">brief.ug</a>) for
   an explanation of features.
<P>
 
<BR><BR>
<A NAME="Star Catalogs."></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Star Catalogs.
</H3><P><BR><BR>
   In version 43 of the SPICE Toolkit, an introductory level star catalog
   capability has been introduced. The routines used for manipulating star
   catalogs are:
<P>
 
<PRE>
   STCF01
   STCG01
   STCL01
</PRE>
<BR><BR>
<A NAME="CHGIRF"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> CHGIRF
</H3><P><BR><BR>
   Support for the inertial reference frame DE143 has been added to
   SPICELIB.
<P>
 
<BR><BR>
<A NAME="BODTRN"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> BODTRN
</H3><P><BR><BR>
   The routine BODTRN has been added to the Toolkit. This routine allows
   you to easily translate between the names of ephemeris objects to their
   NAIF ID codes.
<P>
 
<BR><BR>
<A NAME="Performance Improvements"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H3> Performance Improvements
</H3><P><BR><BR>
   A number of performance enhancements have been included. Most notable in
   this list is the SPICE exception handling subsystem. By relinking your
   programs you may see an improvement in performance from 20 to 30 percent
   (depending upon how heavily your program makes use of the SPICE
   exception handling capability).
<P>
 
<BR><BR>
<A NAME="Version 42 --- December 1995"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 42 --- December 1995
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes new capabilities available in version 42 of the
   SPICE Toolkit and includes examples of how to make use of these new
   capabilities. The major new capability of Version 42 of the Toolkit is
   the official release of the SPICE Events Kernel Software. This software
   includes all the interface level routines for reading and writing events
   kernels. It also includes the event kernel browser program Inspekt.
   Inspekt has an extensive on-line help facility that for now must serve
   as a user's guide to the program.
<P>
 
   Full documentation for the new capabilities will be available in version
   43 of the Toolkit.
<P>
 
<BR><BR>
<A NAME="Version 41 --- October 1995"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H1> Version 41 --- October 1995
</H1><HR SIZE=3 NOSHADE><P><BR><BR><BR>
   This chapter describes new capabilities available in version 41 of the
   SPICE Toolkit and includes examples of how to make use of these new
   capabilities. There are two major new capabilities provided in version
   41 of the Toolkit. First is the ability to retrieve the states of
   objects by using the names of the objects instead of SPICE integer
   id-codes for those objects. Second is the ability to store and retrieve
   states of objects relative to non-inertial reference frames.
<P>
 
<BR><BR>
<A NAME=""></A>
<H2>
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   Until now, the primary mechanism for retrieving state information from
   the SPICE ephemeris (SPK) files has been the subroutine SPKEZ
   (pronounced: ess pee kay eee' zee). This routine requires that you know
   the integer id-codes associated with the objects of interest.
<P>
 
   Beginning with version 41 of the SPICE Toolkit the routine SPKEZR
   (pronounced: ess pee kay eee' zee er ) will be the primary mechanism for
   retrieving states. The calling sequence for this new routine is
<P>
 
<PRE>
   CALL SPKEZR ( TARG, ET, REF, ABCORR, OBS, STARG, LT )
</PRE>
   where
<P>
 
<PRE>
   Inputs:
</PRE>
<DL><DT>
<B>
 TARG
</B><BR><BR>
<DD>
 is a character string that is the name of the object whose state is of
interest. Examples are: 'JUPITER', 'EARTH', 'SUN', 'GOLDSTONE'.<BR>
</DL>
<DL><DT>
<B>
 ET
</B><BR><BR>
<DD>
 is the epoch at which the state is desired. ET is a double precision
number giving the epoch measure in ephemeris seconds past the epoch of
the J2000 reference frame.<BR>
</DL>
<DL><DT>
<B>
 REF
</B><BR><BR>
<DD>
 is a character string giving the name of the reference frame in which
the output state should be represented. Examples are: 'J2000',
'IAU_EARTH'.<BR>
</DL>
<DL><DT>
<B>
 ABCORR
</B><BR><BR>
<DD>
 is a string indicating what forms of aberration corrections should be
applied to the retrieved state.<BR>
</DL>
<DL><DT>
<B>
 OBS
</B><BR><BR>
<DD>
 is a string that is the name of the object to which the returned state
will be relative. Examples are: 'EARTH', 'GOLSTONE'.<BR>
</DL>
<PRE>
   Outputs:
</PRE>
<DL><DT>
<B>
 STARG
</B><BR><BR>
<DD>
 is the state of the target body relative to the observer represented in
the specified reference frame with the specified aberration corrections
accounted for.<BR>
</DL>
<DL><DT>
<B>
 LT
</B><BR><BR>
<DD>
 is the light time in seconds from the target to the observer.<BR>
</DL>
   To illustrate the use of this routine, suppose that you wanted to get
   the B1950 state of Mars relative to Earth corrected for light-time and
   stellar aberration at the epoch that occurs 10 million seconds prior to
   the J2000 epoch. The code fragment below shows how you would call SPKEZR
   to obtain this state. (Note that this assumes that you have already
   loaded ephemerides for Mars and the Earth.)
<P>
 
<PRE>
    DOUBLE PRECISION      STATE ( 6 )
    DOUBLE PRECISION      LT
 
    CALL SPKEZR ( 'MARS',  1.0D+07, 'B1950', 'LT+S',
   .             'EARTH', STATE, LT )
</PRE>
<BR><BR>
<A NAME="Non-inertial Reference Frames"></A>
<p align="right"><a href="#top"><small>Top</small></a></p>
<H2> Non-inertial Reference Frames
</H2><HR ALIGN="LEFT" WIDTH=50% ><P><BR><BR>
   Prior to version 41 of the Toolkit, storing or obtaining states relative
   to a body-fixed frame required conversion to or from states relative to
   inertial frames such as J2000. With version 41 of the SPICE Toolkit,
   this restriction has been removed. It is now possible to store states
   relative to a non-inertial frame. Moreover, you may now retrieve states
   relative to non-inertial frames.
<P>
 
   For example suppose you want to determine whether or not Jupiter is
   above the local horizon at the Goldstone tracking site. The following
   code fragment allows you to make this determination at an epoch ET. Note
   we've hard-coded the radii for the spheroid that approximates the
   surface of the earth.
<P>
 
<PRE>
   C     Look up the bodyfixed state of Jupiter relative to
   C     the Goldstone tracking site and the state of
   C     Goldstone relative to the center of the earth.
   C
         CALL SPKEZR ( 'JUPITER',   ET,    'IAU_EARTH', 'LT+S',
        .              'GOLDSTONE', JSTATE, LT )
 
         CALL SPKEZR ( 'GOLDSTONE', ET,    'IAU_EARTH', 'NONE',
        .              'EARTH',     GSTATE, LT )
   C
   C     Compute the local surface normal at the Goldstone site.
   C
         EQRAD1 = 6378.140
         EQRAD2 = 6378.140
         POLRAD = 6356.75
 
         CALL SURFNM ( EQRAD1, EQRAD2, POLRAD, GSTATE, LNORML )
   C
   C     Next compute the angle between the local normal and the
   C     vector to Jupiter. If the angle is less than pi/2 then
   C     Jupiter is above the local horizon.  Otherwise it's not
   C     visible.
   C
         ANGLE = VSEP ( JSTATE, LNORML )
 
         IF ( ANGLE .LT. HALFPI() ) THEN
            WRITE (*,*) 'Jupiter is above the horizon.'
         ELSE
            WRITE (*,*) 'Jupiter is not visible from Goldstone.'
         END IF
</PRE>
   Below is a list of the non-inertial frames that are currently supported.
   Frames that begin with the letters IAU are frames whose orientation is
   specified in the report: "Report of the IAU/IAG/COSPAR Working Group on
   Cartographic Coordinates and Rotational Elements of the Planets and
   Satellites"
<P>
 
<PRE>
   IAU_ADRASTEA
   IAU_AMALTHEA
   IAU_ANANKE
   IAU_ARIEL
   IAU_ATLAS
   IAU_BELINDA
   IAU_BIANCA
   IAU_CALLISTO
   IAU_CALYPSO
   IAU_CARME
   IAU_CHARON
   IAU_CORDELIA
   IAU_CRESSIDA
   IAU_DEIMOS
   IAU_DESDEMONA
   IAU_DESPINA
   IAU_DIONE
   IAU_EARTH
   IAU_EARTH_BARYCENTER
   IAU_ELARA
   IAU_ENCELADUS
   IAU_EPIMETHEUS
   IAU_EUROPA
   IAU_GALATEA
   IAU_GANYMEDE
   IAU_HELENE
   IAU_HIMALIA
   IAU_HYPERION
   IAU_IAPETUS
   IAU_IO
   IAU_JANUS
   IAU_JULIET
   IAU_JUPITER
   IAU_JUPITER_BARYCENTER
   IAU_LARISSA
   IAU_LEDA
   IAU_LYSITHEA
   IAU_MARS
   IAU_MARS_BARYCENTER
   IAU_MERCURY
   IAU_MERCURY_BARYCENTER
   IAU_METIS
   IAU_MIMAS
   IAU_MIRANDA
   IAU_MOON
   IAU_NAIAD
   IAU_NEPTUNE
   IAU_NEPTUNE_BARYCENTER
   IAU_NEREID
   IAU_OBERON
   IAU_OPHELIA
   IAU_PANDORA
   IAU_PASIPHAE
   IAU_PHOBOS
   IAU_PHOEBE
   IAU_PLUTO
   IAU_PLUTO_BARYCENTER
   IAU_PORTIA
   IAU_PROMETHEUS
   IAU_PROTEUS
   IAU_PUCK
   IAU_RHEA
   IAU_ROSALIND
   IAU_SATURN
   IAU_SATURN_BARYCENTER
   IAU_SINOPE
   IAU_SUN
   IAU_TELESTO
   IAU_TETHYS
   IAU_THALASSA
   IAU_THEBE
   IAU_TITAN
   IAU_TITANIA
   IAU_TRITON
   IAU_UMBRIEL
   IAU_URANUS
   IAU_URANUS_BARYCENTER
   IAU_VENUS
   IAU_VENUS_BARYCENTER
</PRE>

</TD>
</TR>
</TBODY>
</TABLE>

</BODY>

</HTML>
